2011-12-09 132 views
1

有誰知道如何在android中實現自定義佈局?在android中的自定義佈局

我有CustomLayout類。

CustomLayout extends LinearLayout 

與構造public CustomLayout(Context context)public CustomLayout(Context context, AttributeSet attrs)

我也有一個XML佈局(的example.xml)

<com.myproject.layout.CustomLayout 
    android:id="@+id/cl_main"  
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical"> 

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

</com.myproject.layout.CustomLayout> 

當我設置的內容視圖中我的活動

setContentView(R.layout.example); 

我的全球佈局充氣,並顯示,但「內部按鈕」我不在佈局裏面... 任何想法?

+0

我認爲你的CustomLayout佔據整個區域。將layout_height作爲wrapcontent。 –

+0

由於按鈕在裏面,fill_parent不是問題。 我想要一個全屏佈局,裏面有視圖。 – littleDev

回答

1

我發現你必須重寫這個方法。

public void addView(View child, android.view.ViewGroup.LayoutParams params) 
{ 
    //... 
    llContainer.addView(child, fillParentLayoutParams); 
    //... 
} 

其中llContainer是應該放置視圖的佈局。 這個方法被inflater調用來用xml定義填充你的視圖。