Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在对话框中阅读用户选择_Java_Android_Android Dialog - Fatal编程技术网

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)