如何从另一个片段活动中的片段活动访问按钮
问题描述:
我在我的项目中创建了一个选项卡式视图。有三个片段活动如何从另一个片段活动中的片段活动访问按钮
- Home_fragment
- Category_fragment
- Favorite_fragment
我称之为Home_fragment
在YouTube API显示的YouTube播放清单。
现在我想在我的Category_fragment
中添加三个按钮。当我打电话一号按钮,即会显示我Home_fragment
视频的其他播放列表作为按钮2和按钮3
我如何创建在Home_fragment
按钮可以从Category_fragment
调用一个方法?
我做这个代码为我的最后一个项目中,我呼叫按钮从显示在MainActivity
列表中的抽屉。
怎么能这样做,但把按钮放在我的Category_fragment
,并打电话给他们在Home_fragment
?
@Override
public boolean onNavigationItemSelected(MenuItem item) {
getVideosPlaylist home = new getVideosPlaylist();
int id = item.getItemId();
menu_id = id;
if (id == R.id.nav_main) {
url = url_home;
main_toolbar =toolbar;
main_toolbar.setTitle(item.getTitle().toString());
videos.clear();
no_fav.setVisibility(View.GONE);
home.execute();
}if (id == R.id.nav_catone) {
url = url_one;
catone = toolbar;
catone.setTitle(item.getTitle().toString());
videos.clear();
no_fav.setVisibility(View.GONE);
home.execute();
}
答
当您创建的片段,你可以设置一个标签,你可以使用以后找到它:
Fragment fragment = YOUR FRAGMENT HERE;
getSupportFragmentManager().beginTransaction().add(R.id.main_content, fragment, "YOUR TAG HERE").commit();
为了找到它:
Fragment fragment = (YOUR FRAGMENT)getSupportFragmentManager().findFragmentByTag("YOUR TAG HERE");
然后你访问方法:
fragment.yourMethod();
让你的方法公开是很重要的,这样你才能在课堂外使用它。另外,如果您不使用兼容性,则可以使用getFragmentManager。