1

コンテンツ ビューは 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
4

1 に答える 1

2

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);
于 2012-07-23T03:54:00.167 に答える