zoukankan      html  css  js  c++  java
  • android开发中一个activity如何调用另一个xml中的控件

    有时候,我们需在一个activity中使用另一个activity中的控件,这时候就不能直接findViewById,不然会报错指向空对象,这时就需要像下面这样做。

    LayoutInflater factory = LayoutInflater.from(当前类.this); 

    View layout = factory.inflate(R.layout.你要获取的另一个XML, null); 

    TextView textview = (TextView) layout.findViewById(R.id.控件ID);

    上面这样的方法仅限在activity或Fragment中引入,但是如果想引入弹出的自定义的dialog中的控件该怎么办呢?这里以使用dialog中的Edittext为例。

    SettingDialog.java是我自定义的dialog,其中里面包含几个Editext。效果图如下:

    这里我想在弹出这个dialog的Activity中使用dialog中的控件,那么应该这么办:

    先在Activity中声明这个dialog

    private SettingDialog settingDialog =new SettingDialog(this, R.style.MyDialog);//括号里面的是SettingDialog的构造器SettingDialog(Context context,int theme);

    然后再activity声明想使用的dialog中的控件(这里我以“服务器IP地址的Editext为例”)

        private EditText server_ip;// 对话框的ip
       server_ip = (EditText) settingDialog.findViewById(R.id.server_ip);

    这样就可以将Dialog中的控件获取到了,接下来就可以正常按照一般的控件进行操作了。

  • 相关阅读:
    Https的请求过程
    计算机网络知识
    数据结构之图
    Python3线程池进程池
    数据结构之堆heapq
    EffectivePython并发及并行
    EffectivePython类与继承
    EffectivePython并发及并行
    5.19完全数
    5.18数字全排列
  • 原文地址:https://www.cnblogs.com/1925yiyi/p/7568475.html
Copyright © 2011-2022 走看看