This paper proposes a cross-layer design for resource allocation in IEEE 802.16 OFDMA networks, which aims to provide QoS guarantee and fairness for heterogeneous traffics with different channel conditions and priorities. First, "QoS rate " is defined to characterize the instantaneous rate required for meeting the QoS constraints. Accordingly, the "QoS rate " requirements are processed following strict priority. At each priority level, the target of resource allocation is to minimize the resource consumption for maintaining the "QoS rate" constraints. Then, fairness is provided for the "non-QoS rate" requirements in terms of weight fairness and proportional fairness, respectively. The simulation results show that our approach ensures low QoS outage probabilities, as well as balances the tradeoff between resource efficiency and fairness.