2011-04-13 67 views
1

我的應用程序是關於操縱和顯示特定實體的不同視圖。我有一個名爲Item的類,它在我的應用程序中定義了一個實體。我創建瞭如何呈現的Item秒的特定版本的自定義佈局:如何構建參數化的自定義佈局?

public class MyItemLayout extends FrameLayout { 
    public MyItemLayout(Context context, AttributeSet attrs) { ... } 
} 

我希望能夠在XML中引用此:

<MyItemLayout .../> 

我不明白但是:

  1. 如何在XML中引用它?
  2. 如何設置元素的Item實例?我不能在XML中做到這一點(或者我可以嗎?),那麼我如何在代碼中做到這一點?

謝謝。你引用一個自定義組件(查看或ViewGroup中)

回答

1

一種方法是有完整的包名稱,如<com.foo.bar.MyItemLayout>

一個選項也聲明在XML是使用在構造函數中AttributeSet來傳遞數據。如果您使用XML設置屬性,則可以使用此類中的方法獲取它(例如,getFloatValue())。

所以: 第1步:做這樣的事情<com.foo.bar.MyItemLayout item="xxxx"></com.foo.bar.MyItemLayout> 步驟2:在MyItemLayout構造函數調用attrs.getFloatValue()(或者任何一種你希望)來獲取數據

希望它幫助 JQCorreia