9095


`LinearLayout`に`CardView`を動的に3つ`Horizontal`で追加したのですが､子Viewの`CardView`のmarginが反映されずに､
カード間の隙間が表示されません｡ どうすれば､marginを表示できるのでしょうか｡  
以下に､XMLとView追加ロジックの概略の1部を示します｡

**View追加ロジック**

[code]

    LinearLayout relative = (LinearLayout)findViewById(R.id.relative_items);
    CardView itemLayout = (CardView)mInflater.inflate(R.layout.relative_and_recommend_item, null, false);
    
    /*View定義*/
    
    relative.addView(itemLayout);
    
[/code]

**CardViewのXML**

[code]

    <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardCornerRadius="@dimen/cardview_default_radius"
        android:layout_marginTop="5dp"
        android:layout_marginRight="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginBottom="5dp"
        android:clickable="true">
    
        /*content*/
    </android.support.v7.widget.CardView>
    
[/code]

**Viewを追加するLinearLayout**

[code]

    <LinearLayout
    android:id="@+id/relative_items"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:background="@color/background"/>
    
[/code]


CC BY-SA 3.0
2015-04-10T13:30:14.243
9019
2015-04-13T03:19:08.863
7232
question
android android-layout
動的に追加したCardViewのmarginが反映されない｡


`inflate`メソッドの第二引数を指定することにより、子の`LayoutParams`が反映されるようになります。

[code]

    LinearLayout relative = (LinearLayout)findViewById(R.id.relative_items);
    CardView itemLayout = (CardView)mInflater.inflate(R.layout.relative_and_recommend_item, relative, false);
    
    /*View定義*/
    
    relative.addView(itemLayout);
    
[/code]


CC BY-SA 3.0
2015-04-13T03:19:08.863
9095
2015-04-13T03:19:08.863
8216
9019
answer