我需要你的幫助。我正在製作一個使用Wiimote的控制程序,並且我需要製作兩種不同類型的控件。每個控制器代碼在類controlType1和controlType2中定義(其中#2不包括在內,但大部分與#1相同)。如何在java中切換對象與事件監聽器?
這個想法是,當我按下WiiMote上的某個按鈕時,控制器從type1切換到type2。我已經實例化了2個對象,並且它應該在按下按鈕時移除其中一個對象的偵聽器,並將其更改爲另一個對象。
目前,我走了這麼遠,卡在這裏。任何想法我應該怎麼做?
public class WiiDroneControl implements ControlSwitchListener {
private Wiimote wiimote;
private WiimoteListener control1 = (WiimoteListener) new controlType1(this);
private WiimoteListener control2 = (WiimoteListener) new controlType2(this);
public WiiDroneControl() {
Wiimote wiimotes[] = WiiUseApiManager.getWiimotes(1, true);
if(wiimotes!= null && wiimotes.length > 0)
{
wiimote = wiimotes[0];
wiimote.addWiiMoteEventListeners(control1);
wiimote.addWiiMoteEventListeners(control2);
wiimote.activateMotionSensing();
wiimote.activateContinuous();
wiimote.getStatus();
}
}
@Override
public void onSwitchEvent() {
// TODO Auto-generated method stub
}
}
其他類
public class controlType1 implements WiimoteListener{
ControlSwitchListener listener = null;
public controlType1(ControlSwitchListener l) {
listener = l;
}
@Override
public void onButtonsEvent(WiimoteButtonsEvent e) {
// TODO Auto-generated method stub
listener.onSwitchEvent();
if (e.isButtonOnePressed())
{
//switch controller object when this button is pressed
}
}
}
* 「的Wiimote」 *那是什麼? –
從來沒有聽說過任天堂Wii?這是控制器 –
..沒有聽說過鏈接到一個信息來源?如果沒有標籤,這是一個很好的指示,這是必要的。 –