2015-10-15 71 views
0

我在XML文件中定義的子視圖類的自定義屬性:修改自定義屬性,在

<com.mysubView> 
    android:id="@+id/board" 
    android:layout_height="match_parent" 
    android:layout_width="match_parent" 
    cus:Count="0" 
    /> 

我希望能夠訪問它main_activity.java設定值像這樣的計數:

findViewById(R.id.board).setCount(10); 

這可能嗎?

注意:attrs.xml已經填充了相應的stylable。

Here is a related article on custom attributes 下面是構造函數的子視圖類:

public MySubView (Context c, AttributeSet attrs) { 
    super(c, attrs); 
} 

回答

1

您可以更改計數的值。當然,你需要有簽名setCount(int)的方法,裏面mysubView定義,你將不得不的findViewById返回結果轉換爲mysubView

((mysubView)findViewById(R.id.board)).setCount(10); 

這樣你就可以改變你的mysubView定義的任何特定的屬性/行爲

+0

請您詳細說明一下嗎?該方法的實施將會是什麼樣子?我應該訪問哪個變量?例如:我是否直接將int直接傳遞給帶簽名的方法?我在哪裏分配它? – theMobDog

+0

是否寫過View的子類? – Blackbelt

+0

是的。測試和工作。我現在將void setCount(int test)添加到它。我不知道把它分配給什麼。計數不可用。 – theMobDog