我想在android中创建水平菜单。 Android支持可纵向扩展的可扩展列表视图,但我希望水平扩展菜单。请参考图片
说明
在图像Menu1中,menu2,menu3是主菜单,s1,s2,s3是菜单1的子项。如果我点击主菜单,它的子项必须展开。
答案 0 :(得分:3)
您可以将子菜单放在LinearLayout中,并在onClickListener中添加View.VISIBLE / View.GONE游戏
答案 1 :(得分:1)
这是一个简单的例子。 你应该自己完成它。
in xml。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/attachments_list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal">
<Button
android:id="@+id/btn_menu1"
android:layout_width="0dp"
android:layout_height="50dp"
android:text="Menu1"
android:layout_weight="1"
/>
<LinearLayout
android:id="@+id/subview_menu1"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_weight="2"
android:visibility="gone"
>
<Button
android:layout_width="0dp"
android:layout_height="fill_parent"
android:text="S1"
android:layout_weight="1"
/>
<Button
android:layout_width="0dp"
android:layout_height="fill_parent"
android:text="S2"
android:layout_weight="1"
/>
<Button
android:layout_width="0dp"
android:layout_height="fill_parent"
android:text="S3"
android:layout_weight="1"
/>
</LinearLayout>
<Button
android:layout_width="0dp"
android:layout_height="50dp"
android:text="Menu2"
android:layout_weight="1"
/>
<Button
android:layout_width="0dp"
android:layout_height="50dp"
android:text="Menu3"
android:layout_weight="1"
/>
</LinearLayout>
在btn_menu1 OnClickListener
中public void onClick(View v) {
if (subview_menu1.isShown()) {
subview_menu1.setVisibility(View.GONE);
}
else{
subview_menu1.setVisibility(View.VISIBLE);
}
}