2012-04-20 10 views
0

単純なUIを1つ作成し、mainContainer2というIDで設定しました。 私はImはあなたが求めているのかわからAndroid:UIコンポーネントを作成してプログラムで再利用

<LinearLayout 
    android:id="@+id/mainContainer2" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Large Text" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="10dp" 
     android:src="@drawable/ic_launcher" /> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" > 

     <TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Medium Text" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 

     <TextView 
      android:id="@+id/textView3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Medium Text" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 
    </LinearLayout> 

    <Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Button" /> 
</LinearLayout> 

LinearLayout mainContainer = new LinearLayout(this); 
mainContainer.setOrientation(LinearLayout.VERTICAL); 

TextView textoqualquer = new TextView(this); 
textoqualquer.setText("textoqualquer"); 
mainContainer.addView(textoqualquer); 

LinearLayout maincontainer = new LinearLayout(this); 
maincontainer.setOrientation(LinearLayout.VERTICAL); 
maincontainer.findViewById(R.id.mainContainer2); 



mainContainer.addView(maincontainer); 

setContentView(mainContainer); 

答えて

0

例えば、このようなものは、ループ内でそれを再利用することが可能であるかどうかを知りませんします。ちょうどそして、あなたが今までに必要なレイアウトを使用することができます

LayoutInflater mInflater = LayoutInflater.from(context); 
LinearLayout yourLayout = (LinearLayout)mInflater.inflate(R.layout.your_layout, null); 

のようにそれを膨張させることにより、必要な場所がありますが、同じXML UIを使用することができます。 また、XMLファイルで、あなたは私はあなたがこのケースでレイアウトインフレータを使用することができると思う

<include layout="@layout/okcancelbar_button"/> 
0

のようにどちらか「を含む」または「マージ」タグ を使用して別のXMLレイアウトを再利用することができます。使用する

LinearLayout headerView =(LinearLayout)View.inflate(this、R.layout.layout_name、null);

これは、レイアウト、あなたの完全な親のレイアウトを与えるだろうし、その後、あなたの完全なビューを再利用したり、

view_typeのmy_view =(view_type)headerview.findviewbyid(R.id.view_nameを使用して、そのビューの一部を再利用することができます)

関連する問題