這是我的第一個android應用程序,所以也許這是一個愚蠢的問題。所以,請考慮我是否有任何錯誤。在android中使用「this」靜態方法
我正在構建一個與藍牙相關的應用程序。
我有一個方法,我MainActivity.java
:
public void showDeviceListDialog() {
BluetoothDeviceListDialog dialog = new BluetoothDeviceListDialog(this);
dialog.setOnDeviceSelectedListener(this);
dialog.setTitle("Paired Devices");
dialog.setDevices(bluetoothSerial.getPairedDevices());
dialog.showAddress(true);
dialog.show();
}
我需要調用從另一個片段此方法。所以,當我調用這樣的方法時:MainActivity.showDeviceListDialog();
它要求製作方法靜態。但是,當我提出這靜態我對我的方法得到的 「這」 [dialog.setOnDeviceSelectedListener(
這);
]錯誤。
我已經閱讀了一些帖子,如this和this,但我沒有得到有關我的問題的幫助。
我從我的片斷嘗試這樣做:
MainActivity mc = new MainActivity();
mc.showDeviceListDialog();
,但這正顯示出NullPointerException異常。
所以,請告訴我如何從我的片段調用它沒有這個錯誤。 謝謝。
您可以使用接口作爲活動的回調。永遠不要'MainActivity mc = new MainActivity();' – Raghunandan
你不能實例化你的活動 – Piyush
你不能用'this'和'static'。你不應該在擴展'Activity'的類上使用'new' – Blackbelt