android– 处理自定义对话框中的按钮

android– 处理自定义对话框中的按钮,第1张

概述我有一个Android自定义对话框的问题.我在onCreateDialog(int)函数中构造了一个自定义对话框:dialog=newDialog(this);dialog.setContentView(R.layout.custom_dialog);dialog.setTitle("CustomDialog");我在同一个类中有一个onClick(View)函数:publicvoidonClick(V

我有一个Android自定义对话框的问题.

我在onCreateDialog(int)函数中构造了一个自定义对话框:

dialog = new Dialog(this);dialog.setContentVIEw(R.layout.custom_dialog);dialog.setTitle("Custom Dialog");

我在同一个类中有一个onClick(VIEw)函数:

   public voID onClick(VIEw v) {        switch(v.getID()) {        case R.ID.dialog_button:            Log.i("pma57","dialog button pressed");            break;        case R.ID.main_button:            showDialog(DIALOG_CUSTOM);            break;        }           }

这是XML定义:

<?xml version="1.0" enCoding="utf-8"?><linearLayout  xmlns:androID="http://schemas.androID.com/apk/res/androID"  androID:orIEntation="vertical"  androID:layout_wIDth="fill_parent"  androID:layout_height="fill_parent"  androID:paddingleft="20dp"  androID:paddingRight="20dp"  androID:paddingBottom="20dp">      <TextVIEw        androID:layout_wIDth="fill_parent"        androID:layout_height="wrap_content"        androID:text="@string/enter_username" />      <EditText        androID:layout_wIDth="fill_parent"        androID:layout_height="wrap_content" />      <button        androID:ID="@+ID/dialog_button"        androID:layout_wIDth="fill_parent"        androID:layout_height="wrap_content"        androID:text="OK"        androID:onClick="onClick" /></linearLayout>

对话框显示出来.但是button不起作用(应用程序崩溃) – 这很好,因为回调的onClick函数是在我的主要活动中定义的 – 对话框是一个新活动(我是对的吗?).

但我真的不知道如何在对话框中实现一个按钮 – 我认为这是技术的基本理解问题.很长的路要是继承Dialog并在那里写下所有东西 – 但还有另一种我看不到的方法吗?

解决方法:

我使用它的方式,而不是有一个开关块是使用onClickListeners为按钮:

dialog = new Dialog(this);dialog.setContentVIEw(R.layout.custom_dialog);dialog.setTitle("Custom Dialog");button dialog_btn = (button) dialog.findVIEwByID(R.ID.dialog_button);dialog_btn.setonClickListener(new VIEw.OnClickListener() {    // Perform button logic}

请注意,您正在从对话框中查找视图,而不是直接调用findVIEwByID,因为它将返回空指针,因为应用程序视图上不会有dialog_button.

总结

以上是内存溢出为你收集整理的android – 处理自定义对话框中的按钮全部内容,希望文章能够帮你解决android – 处理自定义对话框中的按钮所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1102363.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存