2012-12-25 92 views
1

我有我的xml設置,以便每個類包含相同的菜單欄。我必須複製每個使用菜單欄的類中按鈕onClick調用的每個方法。有沒有解決的辦法?我試圖擴展其他類,但是每個類都已經擴展了活動,並且不能在Android中擴展多個類。另一個類的android xml按鈕調用方法

實施例: 菜單欄有按鈕doStuff。類A包括菜單欄。 A類實現了doStuff。 B類包括菜單欄。 B類實現了doStuff。

它們都實現在完全相同的方式相同的方法。有沒有辦法定義這些方法(如doStuff)一次,並讓每個按鈕調用該方法?

回答

1

我的解決辦法是使每個按鈕調用一個方法。這在所有使用按鈕的類中都重複了。然後,這些單獨的方法稱爲中心方法,以便可以從一個位置更改代碼,而不必重複更改。

實施例:菜單欄有按鈕doStuff。 A級包括菜單欄。 A類實現了doStuff。 B類包括菜單欄。 B類實現了doStuff。

解決方法:菜單欄有按鈕doStuff。 A級包括菜單欄。類A實現了將調用引用到中心類的處理程序。 B類包括菜單欄。 B類實現處理程序。

0

可以在每類中創建另一個類,它實現doStuff()方法,然後只設置偵聽器的按鈕。你將一直需要設置監聽器,或者通過調用setOnClickListener()(或者在XML文件中,但是我不知道你是否可以調用另一個類的方法)。如果你需要從你的班級獲得一些意見,你可以將它們作爲參數傳遞給他們。