2016-01-26 81 views
0

我在我的項目中使用了ViewPagerFragment。包含ViewPager的活動有toolbartoolbar具有一組圖標,用於對裝載在片段中的數據執行一些操作。所以我的問題是如何找到活動中的圖標點擊片段內。 我認爲創建自定義偵聽器並將其傳遞到適配器的解決方案之一。當偵聽器再次調用適配器時,會調用片段中的另一個偵聽器,但我認爲這不是一個好辦法。將OnclickListener從活動傳遞到ViewPager中的片段

回答

0
((MyActivity) getActivity()).myOnClickMethod(); 

這也適用。所以你不需要添加任何監聽器。

你也可以這樣做:

public class MyActivity extends Activity implements FragmentClickedListener{ 
} 

和片段御所:((FragmentClickedListener) getActivity()).myOnClickMethod();

在這種情況下 FragmentClickedListener

看起來是這樣的:

public interface FragmentClickedListener{ 
void myOnClickMethod(); 
} 

也許這是不是最好的出路,但它的作品。

1

在適配器中維護一個適配器的修訂緩存大小的哈希表(默認爲3)。在添加或刪除片段時,請繼續添加和刪除片段的實例。

在活動中的click方法中,使用hashmap獲取當前片段並通過調用方法執行任務。

讓我知道你是否想要這個代碼實現這個

相關問題