2012-12-15 26 views
16

XMLでUIレイアウトを作成し、それを子として既存のビューに挿入したい(複数回挿入される)。AndroidでXMLを使用してプログラムでビューを作成する

例えば、ここではXMLファイルが含まれていますものです:

<RelativeLayout 
    android:id="@+id/relativeLayout1" > 
    <Button android:id="@+id/myButton" 
     android:text="@string/mystring" /> 
</RelativeLayout> 

は例えば、今私は、親のLinearLayoutを取得し、今の子ビューとしてそのXMLファイルを追加したい:

LinearLayout linear = (LinearLayout)findViewById(R.id.myLayout); 
//need to create a view object from the xml file 
linear.addView(myXmlObject); 

XMLリソースをビュータイプに変換できますか?もしそうなら、どうすればいい?

+1

@Ericすごいああ、私はそれを逃しました。ちょっと待って! – Sam

+1

@Samどのように私は...私はちょうど...大丈夫、あなたは完全にそこに私を所有しました。 – Eric

+0

おそらくあなたは何らかのアダプタを探しているはずです。 – FoamyGuy

答えて

61

LayoutInflaterと思っています。のは、あなたの例のXMLファイルがcustom_layout.xmlであるとしましょう:

LayoutInflater inflater = LayoutInflater.from(context); 
RelativeLayout layout = (RelativeLayout) inflater.inflate(R.layout.custom_layout, null, false); 

LinearLayout linear = (LinearLayout)findViewById(R.id.myLayout); 
linear.addView(layout); 
+0

ありがとう。あなたは私の時間を救った –

+0

どのようにボタンのクリックを処理しましたか?つまり、各行のボタンのクリックには異なる機能があります。 – user4057066

関連する問題