【问题标题】:Change fragment layout with action bar menu使用操作栏菜单更改片段布局
【发布时间】:2014-11-14 12:33:49
【问题描述】:

我已经实现了一个项目,其中包含 1 个活动,带有选项卡导航模式的 actionBar(5 个选项卡,每个选项卡都是一个片段)。

每个片段都有自己的菜单选项(在操作栏中)。

我需要的是,当用户单击其中一个选项时,更改当前片段的布局。我知道将代码放在哪里,在这种情况下它将是这样的......

@Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {

        inflater.inflate(R.menu.fragment1, menu);
        super.onCreateOptionsMenu(menu, inflater);
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {

        switch (item.getItemId()) {

        case R.id.menu_listMode:
            //Here I need to put the code to change layou of this current fragment...
            return true;
        default:
            break;
        }
        return true;
    }

更具体的... 例如:您有一个带有日历视图的片段,当您单击操作栏中的选项时,该视图将更改为 listViewFragment。 (布局改变了,但标签是一样的)。

我使用过这个示例项目:https://github.com/sgolivernet/curso-android-src/tree/master/android-actionbar-tabs

【问题讨论】:

    标签: android android-fragments tabs android-actionbar fragment


    【解决方案1】:

    如果您有 Activity 的引用,请使用该 Activity 通过 FragmentManager 找到您的 Fragment。然后让你的 Fragment 扩展另一个布局或动态添加列表视图。

    如果您的活动没有参考,请使用回调接口通知您的活动。

    【讨论】:

      【解决方案2】:

      CallBack 是您问题的最佳解决方案。 Link 1 Link 2 可以帮到你。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多