2012-04-20 75 views
0

請給我一個提示如何解決這種情況:Android:如何從子定製視圖調用父Activity方法?

我在我的活動中有兩個自定義視圖,我想在點擊一個自定義視圖(Y)中的按鈕後調用一個活動方法。
我可以findViewById()得到父母胡亞蓉的X視圖,並調用它的公共方法。但我怎麼能讓父Acitivy知道該按鈕被按下?

我一定要通過活動參照視圖Y調用從OnClickListener的活動方法?

example謝謝!

回答

1
button = (Button)customviewY.findViewById(R.id.btnClick); 

button.setOnClickListener(new OnClick..(){ 
    onClick(View v) 
    { 
     textView= (TextView)customviewY.findViewById(R.id.txtView); 
     textView.setText(""); 
    } 
}); 
+0

感謝。 如果這些變化更復雜呢?爲了節省例如數據SharedPreferences,執行的AsyncTask等..我已經有方法做這一切在父活動,我想我能以某種方式調用它。 我是否必須複製該方法才能從OnClickListener調用它? – 2012-04-20 15:20:14

+0

其依賴於任何重複的代碼或 顯示或隱藏視圖如果烏拉圭回合的應用程序並不複雜... 或者最好使用TabView的 – MAC 2012-04-20 15:23:40

+0

我意識到,一個真正_need_調用一個動作的方法,(和執行的AsyncTask),所以我'v有點改變了這個問題。我想到的唯一解決方案是通過按鈕將Activity引用傳遞給視圖(但是視圖是通過XML添加的,因此我不會將它稱爲構造函數)。我應該通過一些'set'方法來傳遞Activity嗎? – 2012-04-22 11:06:15

相關問題