2014-07-12 67 views
1

我用ListView創建了一個AlertDialog。當創建AlertDialog時,它也開始掃描BLE設備。當用戶點擊其中一個項目時,scanLeDevice函數被調用,這將停止進一步掃描。我想知道如何在AlertDialog外單擊時調用此函數?AlertDialog關閉時如何調用函數?

public class BLEScan extends AlertDialog { 
.... 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

... 
bleList.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { 
      BLEScan.this.scanLeDevice(false); 
      selectedBluetoothDevice =(BluetoothDevice) (bleList.getItemAtPosition(i)); 
      BLEScan.this.dismiss(); 
     } 
    }); 
+0

請參閱:http://developer.android.com/reference/android/app/Dialog.html#setOnDismissListener(android.content.DialogInterface.OnDismissListener) –

回答

1

設置一個OnDismissListener通過setOnDismissListener()

1

試試這個。

您可以覆蓋onDismiss方法在DialogFragment,這是在對話框被取消時被調用。

希望,這可能對你有幫助!