【发布时间】:2014-10-06 00:38:07
【问题描述】:
我正在触发一个活动以启用蓝牙发现。我有一个回调onActivityResult,但无论我在弹出窗口时按“拒绝”还是“允许”,它都不会被调用。
我只有一个主要活动,当用户按下按钮时会触发意图。
这是我的代码:
// button press calls this
public void onStart(View v)
{
if (bButtonStartPressed)
{
Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
startActivityForResult(intent, DISCOVERY_REQUEST);
changeViewState((Button)v, R.drawable.btn_on);
}
... other stuff...
}
这是 onActivityResult:
/*
* Activity Result
*/
//@Override
protected void OnActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
Log.d("OnActivity", "Result : " + requestCode + " " + resultCode);
if (requestCode == ENABLE_BLUETOOTH)
{
if (resultCode == RESULT_OK)
{
...do something...
}
}
else if (requestCode == DISCOVERY_REQUEST)
{
if (resultCode == RESULT_OK)
{
...do something...
}
else if (resultCode == RESULT_CANCELED)
{
changeViewState((Button)btnStart, R.drawable.btn_normal);
}
}
}
您会注意到的一件事是 @Override 被注释掉了,这是因为当我覆盖 onActivityResult 方法时出现此错误:
The method OnActivityResult(int, int, Intent) of type MainActivity must override or implement a supertype method
【问题讨论】:
标签: android android-activity bluetooth