【问题标题】:Multiple context menus in a single activity,each on different lists单个活动中的多个上下文菜单,每个在不同的列表中
【发布时间】:2014-03-11 05:04:30
【问题描述】:

我试图在同一个活动中实现两个上下文菜单,但在 android 中注册到不同的列表。我一直在使用 framelayout 来使用如下布局:

 <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="0dip"
        android:layout_weight="1" >

         <include
            android:id="@+id/container1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            layout="@layout/admin_0" />

         <include
            android:id="@+id/container2"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            layout="@layout/admin_1"
            android:visibility="gone" />

布局admin_0 包含一个列表视图,而admin_1 包含另一个。这一切都是在同一个活动中实现和实例化的。我确实参考了一些有关此实现的帖子,但不了解该过程。

这是我们可以在menus.xml 中实现的唯一单一菜单:

<?xml version="1.0" encoding="UTF-8"?>
    <menu xmlns:android="http://schemas.android.com/apk/res/android">

     <item android:id="@+id/Delete" android:title="Delete"></item>
    <item android:id="@+id/Reply"  android:title="Reply"></item>
    <item android:id="@+id/Forward" android:title="Forward"></item> 

    </menu>

【问题讨论】:

    标签: android android-activity android-contextmenu


    【解决方案1】:

    试试这个。
    删除 xml 中的包含源。
    然后,在代码中,您可以使用 inflater 显示另一个 xml。
    但是,函数位于一个 java 代码中。
    例如)

    LinearLayout contentsLayout = ( LinearLayout )findViewById( R.id.contentsLayout );
    LayoutInflater inflater = ( LayoutInflater )getSystemService( Context.LAYOUT_INFLATER_SERVICE );
    inflater.inflate( R.layout.anotherLayout, contentsLayout, true );
    

    【讨论】:

    • 感谢我能帮助你。
    猜你喜欢
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-23
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多