In this paper, we build a dynamic spectrum sharing model in UAV-assisted communications to make the maximum use of spectrum resources. A Two-Stage Stackelberg game is proposed to incent selfish UAVs participating spectrum sharing and to maximize the profits of base stations (BSs), UAVs and users. The UAVs are regarded as agents to rent spectrum from BSs and then share it with the adjacent spectrum demanding users, which improves the spectrum efficiency and the QoS of users. In the first stage, the UAVs provide the optimal strategies according to the BS's strategy. In the second stage, the users give feedback on the optimal strategies according to the UAVs' strategies. Then, the UAVs share the spectrum resources rent from the BS to users and receive the rewards according to the incentives and shares. Simulation results show that our proposed Two-Stage Stackelberg Game improved the utilities of UAVs and users and reduced the BS's load compared to the traditional Stackelberg game model.