2011-01-11 30 views
1

我想實現一個自定義視圖,爲此我希望能夠通過XML佈局文件傳遞參數。抓住這些參數將會或多或少是任意的;它們最終將被用作構建URL的參數(建立和維護有效params的完整列表是不值得的)。將XML參數傳遞到自定義視圖

因此,ApiDemos示例代碼中的方法不一定合適,因爲我不知道參數的名稱。

我試圖做的是以下幾點:

public Chart(Context context, AttributeSet attributes) { 
    super(context, attributes); 
    params = new HashMap<String, String>(); 

    for(int i = 0; i < attributes.getAttributeCount(); i++) 
     params.put(attributes.getAttributeName(i), attributes.getAttributeValue(i)); 
} 

這可能不是去了解這一點的最好辦法..但主要的問題我已經是我怎麼篩選出的android:屬性(即我不希望android:layout_height等在params中)?

回答

0

找到了一種通過使用getAttributeValue()的重載版本來完成此操作的方法。如果有更好的方法可以做到這一點,仍然打開輸入。

+0

其實,我可能需要更好的解決方案。如果我以這種方式做事,我不會出現我可以使用樣式。 – Adam 2011-01-11 20:03:13