dialog-android:在对话中的setView问题

问题描述

android:在对话中的setView问题
在对话中setView如下代码:

LayoutInflater inflater = LayoutInflater.from(this);View layout = inflater.inflate(R.layout.mylayout null);TextView MyTextView = (TextView)findViewById(R.id.my_tv);MyTextView.setText(""test"");AlertDialog MyDialog;AlertDialog.Builder MyBuilder = new AlertDialog.Builder(this);MyBuilder.setTitle(""title"");MyBuilder.setView(layout);MyDialog = MyBuilder.create();MyDialog.show();

my_tv 是在 mylayout.xm中的TextView 。

问题是 MyTextView.setText(""test"");这行报出NullPointer错误。

应该怎么修改?

解决方案

你要找的控件在哪里,就到哪里去找。你把它把在这个房间里,却到另外一个房间里找,自然是找不到的:

TextView MyTextView = (TextView)layout.findViewById(R.id.my_tv);

解决方案二:
楼上回答的很对用这个代码:

TextView MyTextView = (TextView)layout.findViewById(R.id.my_tv);
时间: 2024-08-23 03:21:00

dialog-android:在对话中的setView问题的相关文章

android listview-利用dialog来编辑listview中的数据

问题描述 利用dialog来编辑listview中的数据 package com.example.wightandheight; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; import android.content.DialogInterface; import android.os.Bundle; import android.view.Layou

android-如何设置 dialog 中的 setView?

问题描述 如何设置 dialog 中的 setView? 我使用下面的代码在 dialog 中设置 setView: LayoutInflater inflater = LayoutInflater.from(this); View layout = inflater.inflate(R.layout.mylayout, null); TextView MyTextView = (TextView)findViewById(R.id.my_tv); MyTextView.setText("tes

图片-android 4.0中 WebP不显示问题(不考虑4.0以下系统)

问题描述 android 4.0中 WebP不显示问题(不考虑4.0以下系统) 由于图片太大,我们项目中使用了webp格式的图片,在适配三星s2,4.0系统的时候出现了这种问题,部分webp图片可以显示,一部分webp图片不显示,但是在4.3以上的手机测试时都没有问题,不知道怎么回事,有没有大神帮解答下!谢谢! 解决方案 Android4.0 Toast显示问题Android 4.0 系统语言预设问题android 4.0 显示系统

android 编写fragment中

问题描述 android 编写fragment中 一致出现程序很不幸,**运行已经停止的那个弹出框,是什么问题啊? 解决方案 请给出具体的错误信息,最好能附上相应的源代码以方便分析. 解决方案二: 请给出具体的错误信息,最好能附上相应的源代码以方便分析. 解决方案三: anr错误,可能logcat日志,找到你的代码出错行 解决方案四: 调试的错误日志信息是什么 解决方案五: LZ贴出错误日志才能知道错在哪里 解决方案六: 对话框是依靠Activity存在的,是不是你的Activity finis

android 在代码中如何设置 根视图的宽高?

问题描述 android 在代码中如何设置 根视图的宽高? android 在代码中如何设置 根视图的宽高? 如何设置视图container的宽高? public void popEdit(EditText _edit) { // edit=_edit; LinearLayout container=new LinearLayout(cont); container.setOrientation(LinearLayout.HORIZONTAL); LinearLayout.LayoutParam

android 4.3中一次完整的android源码截屏事件的捕获

1.背景 我们知道android提供了一个系统截屏功能,就是按住电源键和音量减的按键0.5秒,系统将执行截屏功能.所以要实现系统截屏的功能,就是要捕获系统的这两个组合键下面的函数,然后一层一层的向下挖掘.现在网上找到的版本是在Surface.java文件下存在ScreenShot()函数,是@hide的.但是这是之前版本的办法,在android4.3之后已经是不适用的,因为在/frameworks/base/core/java/android/view/的Surface.java下并没有Scre

在Android应用程序中使用Internet数据

常用缩略词 Ajax: Asynchronous JavaScript + XML API:应用程序编程接口 CSV:逗号分隔值 CSS:层叠样式表 DOM:文档对象模型 HTML:超文本标记语言 HTTP:超文本传输协议 IDL:接口 描述语言 JSON:Javascript 对象标识 SAX:XML 简单 API SDK:软件开发包 UI:用户界面 URL:统一资源定位符 XML:可扩展标记语言 3G:第三代手机技术标准 Android 应用程序必须访问位于 Internet 上的数据,而

开发可统计单词个数的Android驱动程序(中)

五.指定与驱动相关的信息 虽然指定这些信息不是必须的,但一个完整的Linux驱动程序都会指定这些与驱动相关的信息.一般需要为Linux驱动程序指定如下信息. 1. 模块作者:使用MODULE_AUTHOR宏指定. 2. 模块描述:使用MODULE_DESCRIPTION宏指定. 3. 模块别名:使用MODULE_ALIAS宏指定. 4. 开源协议:使用MODULE_LICENSE宏指定. 除了这些信息外,Linux驱动模块自己还会包含一些信息.读者可以执行下面的命令查看word_count.ko

Android在JNI中使用ByteBuffer的方法

  Android在JNI中使用ByteBuffer的方法 本文实例讲述了Android在JNI中使用ByteBuffer的方法.分享给大家供大家参考.具体如下: 一.ByteBuffer 定义 在NIO中,数据的读写操作始终是与缓冲区相关联的(读取时信道(SocketChannel)将数据读入缓冲区,写入时首先要将发送的数据按顺序填入缓冲区) 缓冲区是定长的,基本上它只是一个列表,它的所有元素都是基本数据类型.ByteBuffer是最常用的缓冲区,它提供了读写其他数据类型的方法,且信道的读写方