将自定义布局(从文件)添加到另一个布局

时间:2012-07-23 03:45:39

标签: android view android-linearlayout

内容视图是LinearLayout。我们称之为llOne,我们会说它在文件llOne.xml中。

我想添加的视图也是一个LinearLayout,但它们位于不同的文件中。我们称它为llTwo,我们会说它在文件llTwo.xml中。

 setContentView(R.layout.llOne);

 LinearLayout llOne = (LinearLayout) findViewById(R.id.llOne);
 LinearLayout llTwo = (LinearLayout) findViewById(R.id.llTwo);

 llOne.addView(llTwo); //NullPointerException

1 个答案:

答案 0 :(得分:2)

您需要对第二个布局进行充气,因为setContentView只会夸大您的llOne

LayoutInflater inflater = (LayoutInflater) mContext
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View otherView = inflater.inflate(R.layout.yourSecondLayoutFileName, null);

然后

LinearLayout llTwo = (LinearLayout) otherView .findViewById(R.id.llTwo);
llOne.addView(llTwo);