2

我有一个如下所示的片段布局。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" 
android:baselineAligned="false">

<fragment
    android:id="@+id/callsListFragment"
    android:layout_width="0dp"
    android:layout_weight="1.5"
    android:layout_height="match_parent"
    class="com.example.MyCallsListFragment" />

<fragment
    android:id="@+id/callDetailFragment"
    android:layout_width="0dp"
    android:layout_weight="2"
    android:layout_height="match_parent"
    class="com.example.MyCallsDetailsFragment" />

</LinearLayout> 

第一个片段显示所有调用的列表,第二个片段显示其详细信息。他们每个人都有一个单独的菜单选项。

说 callsListFragment 有两个菜单项,例如

View outstanding calls
Calls for today

callDetailFragment 具有三个菜单项,例如

Edit call
Add new call
Archive call

我从各自的片段中膨胀这些菜单。

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
   inflater.inflate(R.menu.menu_mycalls, menu);
}

但是,在双窗格中,我看到所有五个菜单项都相当冲突,因为很难找到哪个菜单项。

这是显示菜单项的方法吗?你能指导我正确的做法吗?

该应用程序将同时支持平板电脑和手机。

4

1 回答 1

0

创建选项菜单时检查是两个窗格模式。

boolean mTwoPane = // isTwoPane ?

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
   if (mTwoPane) return; // if (!mTwoPane) return;
   inflater.inflate(R.menu.menu_mycalls, menu);
}

或者,为两个窗格模式创建新菜单。(制作资源文件夹,如“menu-land”)

于 2013-05-15T09:42:21.067 回答