gpt4 book ai didi

android - 如何在对话框中配置自定义按钮?

转载 作者:太空狗 更新时间:2023-10-29 15:39:45 25 4
gpt4 key购买 nike

这里我有一个自定义对话框,里面有背景 2 ImageButton。问题是,当我尝试为该按钮设置 onclick 监听器时,程序将返回 NullPointerException。我不知道为什么会这样。无论如何如何将操作分配给对话框内的按钮??

暂停菜单 xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:background="@drawable/pause_menu_cropped" android:layout_gravity="center" android:gravity="center|center_horizontal">
<TableLayout android:layout_width="wrap_content" android:id="@+id/tableLayout1" android:layout_height="wrap_content">
<ImageButton android:src="@drawable/pause_button_option" android:layout_width="wrap_content" android:background="@drawable/pause_button_option" android:layout_height="wrap_content" android:id="@+id/btn_pause_option"></ImageButton>
<ImageButton android:src="@drawable/pause_button_quit" android:layout_width="wrap_content" android:background="@drawable/pause_button_quit" android:layout_height="wrap_content" android:id="@+id/btn_pause_quit"></ImageButton>
</TableLayout>
</LinearLayout>

对话代码

        Dialog pauseMenu = new Dialog(this, R.style.NewDialog);
pauseMenu.setContentView(R.layout.pause_menu);

ImageButton quit = (ImageButton)findViewById(R.id.btn_pause_quit);
quit.setOnClickListener(
new OnClickListener() {

@Override
public void onClick(View v) {
TestActivity.this.finish();
}
});
return pauseMenu;

代码在行中返回错误

quit.setOnClickListener();

最佳答案

ImageButton quit = (ImageButton)findViewById(R.id.btn_pause_quit);

应该是

ImageButton quit = (ImageButton)pauseMenu.findViewById(R.id.btn_pause_quit);

发生这种情况是因为为 Activity 调用了 findViewById,并且它的布局中没有 btn_pause_quit 按钮。但是你的对话有。

关于android - 如何在对话框中配置自定义按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5417461/

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