Android如何动态加载布局文件

2025-11-09 11:42:44

1、 

步骤1:使用eclipse新建一个android工程。

Android如何动态加载布局文件

Android如何动态加载布局文件

2、步骤2:工程默认会在主Activity中使用setContentView(R.layout.activity_main);加载一个主布局。

Android如何动态加载布局文件

3、步骤3:我们可以将默认的setContentView(R.layout.activity_main);注释掉,然后根据布局文件中布局的类型定义一个变量,比如一般默认使用相对布局。这里尝试下使用findViewById来实验。

 

 RelativeLayout rl = (RelativeLayout)findViewById(R.layout.activity_main);

 

 setContentView(rl);

Android如何动态加载布局文件

Android如何动态加载布局文件

4、 

步骤4:上面的代码正常情况是可以通过编译的,但如果提示布局文件的id错误,那么很可能是import了不该有的东西:

activity_main cannot be resolved or is not a field MainActivity.java 

Android如何动态加载布局文件

5、注意看看import区的内容,发现多了一个import android.R,将它注释掉发现上面的错误消失了。

Android如何动态加载布局文件

6、运行程序,很奇怪,程序崩溃了,这说明使用findViewById动态载入布局的操作是不行的。

Android如何动态加载布局文件

7、步骤5:可以使用LayoutInflater类的inflate方法加载布局,这个方法具备两个参数,其中第一个是对应布局文件的资源路径,第二个参数可以设置为null。

 

        RelativeLayout rl = (RelativeLayout)LayoutInflater.from(this).inflate(R.layout.activity_main, null);

 

       

 

        setContentView(rl);

Android如何动态加载布局文件

8、再次编译运行,程序无异常。

Android如何动态加载布局文件

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢