android如何将布局文件封装
主函数:mainActivity中,通过按钮去调用另一个类中的方法,那如何在另一个类中载入xml的布局文件?
mainActivity:
按钮的代码:
button.setOnClickListener(new OnClickListener(){
Apple m=new Apple();
m.show();
}
mainActivity中使用的是main.xml
Apple类中:
有个show()方法
这里要如何进行处理能够将另外的一个apple.xml布局文件内容显示出来?
考虑到在程序中使用设计模式,所以这样处理是不是可以的?
我在调试过程中,发现运行到m.show()就出现问题
[解决办法]
首先在你的activity启动的时候,会调用setcontentview.这个时候,系统会根据你的xml生成一个view tree.
你如果要显示你的apple view的话,首先你需要在你的xml中定义一个viewgroup,设置他的id,如id是apple_root.
在activity中,你要ViewGroup root = findViewById(R.id.apple_root).
然后,你需要通过inflater生成你的apple view,在inflate的时候,把root作为inflate的root参数传递过去。就可以了。
[解决办法]
如果你的apple是继承view或者viewgrop的话,那么更简单了,你直接把你的apple写在你的xml中就可以了
假设你的apple 代码为: public class apple extends FrameLayout {
}你的package是com.mycode,那么你直接在xml中 <com.mycode.apple .../>就可以了
给你个例子
http://www.cnblogs.com/ufocdy/archive/2011/05/17/2048958.html