我已经找到了如何以编程方式控制云台,但是我无法告诉用户何时从控制器手动移动了云台。我在这里https://developer.dji.com/api-reference/android-api/Components/Gimbal/DJIGimbal_GimbalState.html
中查看文档但是我不知道如何实例化GimbalState对象,这样我就可以从当前的万向节角度进行读取。有人知道该怎么做吗?
答案 0 :(得分:1)
您好,@特雷弗(Trevor)是我的建议:
1。获取云台实例:
Gimbal gimbal = DJISDKManager.getInstance().getProduct().getGimbal()
2。使用以下方法设置回调,这将使您返回云台状态:
gimbal.setStateCallback(new GimbalState.Callback() {
@Override
public void onUpdate(final GimbalState state) {
if (handler != null && !handler.hasMessages(UPDATE_MSG)) {
gimbalState = state;
handler.sendEmptyMessage(UPDATE_MSG);
} else {
DJILog.e(TAG,"too many events!");
}
}
})
注意:云台状态的更新频率很高(10HZ),请尽量避免UI元素的阻塞。