[英]Android callback from activity to fragment
我在主要活動中覆蓋了“ onOptionsItemSelected”方法,我想在點擊操作欄項以更改列表語言時通知我的列表。 我如何從MainActivity.java回調到ListFragment。
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_exit) {
finish();
return true;
} else if (id == R.id.action_en) {
changeLanguageToEn();
return true;
} else if (id == R.id.action_ge) {
changeLanguageToGe();
return true;
}
return super.onOptionsItemSelected(item);
}
假設您的片段名為MyListFragment.java
並具有一個名為changeLanguage()
的方法,我通常使用以下方法來獲取當前片段:
FragmentManager fragmentManager = getSupportFragmentManager();
// (if you're not using the support library)
// FragmentManager fragmentManager = getFragmentManager();
for (Fragment fragment : fragmentManager.getFragments()) {
if (fragment != null && fragment.isVisible() && fragment instanceof MyListFragment) {
((MyListFragment) fragment).changeLanguage();
}
}
在您的ListFragment中 ,您可以為菜單充氣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.