Java 在对话框中阅读用户选择
可以在对话框中读取用户操作吗 示例:在按钮Java 在对话框中阅读用户选择,java,android,android-dialog,Java,Android,Android Dialog,可以在对话框中读取用户操作吗 示例:在按钮bttn1上单击,对话框打开。如果用户在对话框中单击No则不会发生任何情况。如果用户单击Yes,则bttn1将不可用,bttn2将其状态从setEnabled(false)更改为setEnabled(true) 一般性问题,但我部分参考了使用startActivityForResult()的蓝牙设置 正如当前的答案所提供的,它是关于使用startActivityForResult()和onActivityResult()的,但我仍然不知道如何在这种情况下
bttn1
上单击,对话框打开。如果用户在对话框中单击No
则不会发生任何情况。如果用户单击Yes
,则bttn1
将不可用,bttn2
将其状态从setEnabled(false)
更改为setEnabled(true)
一般性问题,但我部分参考了使用startActivityForResult()
的蓝牙设置
正如当前的答案所提供的,它是关于使用startActivityForResult()
和onActivityResult()
的,但我仍然不知道如何在这种情况下实现这一点
我无法实现以克服此类问题。不确定这是否是您想要的,但您可以创建一个对话框,并听取积极和消极的按钮单击
new AlertDialog.Builder(this)
.setMessage("Deny or Grant?")
.setNegativeButton("Deny", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// Do something on deny click.
}
})
.setPositiveButton("Grant", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// Do something on grant click.
}
})
.create().show();
编辑:
要检测用户是否授予或拒绝蓝牙权限,您应该在活动中覆盖活动结果,并检查结果代码。从:
将显示一个对话框,请求用户允许进行
设备可发现,如图2所示。如果用户回答“是,”
然后,设备将在指定数量的时间内可被发现
时间然后,您的活动将收到对
onActivityResult())回调,结果代码等于
设备可发现的持续时间。如果用户回答“否”
或者,如果发生错误,结果代码将被取消
问题是我想引用已经存在的日志。在我的情况下:如果只是蓝牙,您可以通过检查蓝牙是否已启用来检查用户是否已授予访问权限。授予访问权限应使我的一个按钮仅在有限的时间内启用。问题是,代码不会等待用户在对话框中做出决定。因此,在授予访问权限后立即检查设备的可发现性是不可能的,因为它会跳过
if(mBluetoothAdapter.getScanMode()==BluetoothAdapter.SCAN\u MODE\u CONNECTABLE\u DISCOVERABLE)
。