これについては、これに関連して同様の質問がたくさんあるとは思いますが、まあまあではありません。非アクティビティクラス(Android)のonActivityResultを取得
スーパークラスを拡張しないBluetoothReaderクラスがあります。この呼び出しは、デバイス上でBluetoothが有効になっているかどうかをチェックし、そうでない場合はダイアログを表示します。
public class BluetoothReader {
private Activity activity;
public BluetoothReader(Activity activity){
bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
this.activity = activity;
}
}
私はすべての作品
intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
activity.startActivityForResult(intent, REQUEST_ENABLE_BLUETOOTH);
の下にコードの一部を使用してBluetoothをオンにしますが、今、私のジレンマはどのように私はこれと同じクラスで、このチェックの結果を得ないということです。
私がActivityスーパークラスを拡張していた場合、私はonActivityResultをオーバーライドしなければなりませんでした。
私が試した:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// Doesn't work
}
任意のアイデア?
私はあなたが正確にあなたが呼んでいる「道具」のJavaキーワード –
を使うべきだと思いますstartActivityForResult ?? BluetoothReaderクラスでは? –
onActivityResultは、このstartActivityForResultを呼び出すために使用されるアクティビティに実装されます。 –