gpt4 book ai didi

java - 自定义警报对话框中的访问按钮

转载 作者:行者123 更新时间:2023-11-29 06:58:23 24 4
gpt4 key购买 nike

我使用以下代码创建了一个自定义警报对话框 -

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
LayoutInflater inflater = this.getLayoutInflater();

builder.setView(inflater.inflate(R.layout.dialog, null))
.setTitle("test")
.setCancelable(true);

AlertDialog alert11 = builder.create();
alert11.show();

这是在警告对话框中使用的布局 dialog.xml 的代码 -

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Cancel" />

<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Set"/>

</LinearLayout>

现在,如何获取按钮的引用来设置点击监听器?

我试过了-

Button mButton = (Button) findViewById(R.id.button1);

但我得到一个异常(exception)-

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setText(java.lang.CharSequence)' on a null object reference

还有其他方法可以访问该按钮吗?

最佳答案

您在错误的位置寻找按钮。

View view = inflater.inflate(R.layout.dialog, null);
builder.setView(view)
.setTitle("test")
.setCancelable(true);

然后使用view 来寻找你的按钮

关于java - 自定义警报对话框中的访问按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30032005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com