AnnBnnCnnD 2013-04-01 05:16 采纳率: 0%
浏览 2045

在运行时修改AlertDialog的内容

如题,我试过一些方法没实现。

使用的是自定义布局,我用的下面方法:

TextView mjollnir_descr = (TextView) findViewById(R.id.dialog_item_descr);
    mjollnir_descr.setText(R.string.item_detail_clarity_descr);

在代码第二行报出的错误:

03-31 19:45:25.261: E/AndroidRuntime(781): FATAL EXCEPTION: main
03-31 19:45:25.261: E/AndroidRuntime(781): java.lang.IllegalStateException: Could not execute method of the activity
03-31 19:45:25.261: E/AndroidRuntime(781): Caused by: java.lang.NullPointerException
03-31 19:45:25.261: E/AndroidRuntime(781):  at com.myapp.ItemsOverview.show_details_mjollnir(ItemsOverview.java:81)
  • 写回答

1条回答 默认 最新

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2022-12-19 23:04
    关注

    ChatGPT尝试为您解答,仅供参考
    看起来你在尝试使用自定义布局中的 TextView 控件来更新对话框的内容。


    但是,在你尝试使用 findViewById 方法来获取 TextView 控件时,它返回了 null,导致了空指针异常。这可能是因为你在调用 findViewById 方法之前没有设置自定义布局。

    要解决此问题,首先确保你已经设置了自定义布局,例如:

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    View view = getLayoutInflater().inflate(R.layout.custom_layout, null);
    builder.setView(view);
    

    然后,使用 view.findViewById 方法来获取 TextView 控件:

    TextView mjollnir_descr = (TextView) view.findViewById(R.id.dialog_item_descr);
    mjollnir_descr.setText(R.string.item_detail_clarity_descr);
    

    这应该可以解决问题。

    评论

报告相同问题?

悬赏问题

  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多