【发布时间】:2011-07-12 13:55:12
【问题描述】:
我想在 android 活动中添加一个面板。我将尝试解释它的行为。
它应该在我的活动右侧显示小箭头,如果我点击一个有几个按钮的面板应该会滑出消耗大约 20%-30% 的当前活动。
屏幕上会出现类似菜单。
提前致谢。
【问题讨论】:
-
Sliding Panel 和 Sliding Drawer 是寻找的两个选项
我想在 android 活动中添加一个面板。我将尝试解释它的行为。
它应该在我的活动右侧显示小箭头,如果我点击一个有几个按钮的面板应该会滑出消耗大约 20%-30% 的当前活动。
屏幕上会出现类似菜单。
提前致谢。
【问题讨论】:
查看SlidingDrawer 小部件。但是,这个小部件只会在较旧的 SDK 版本上上下滑动。
否则,您应该考虑使用片段(必要时使用兼容性 API)。您可以查找有关如何构建 GMail 应用程序的一些解释,或 HoneyComb 库示例以获取有关动画片段的信息。
【讨论】:
这是我的面板示例
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="@drawable/border">
<TextView
android:text="@string/panel_title"
android:id="@+id/groupTitle"
android:paddingLeft="5dp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/blue" />
Here you add panel content...
</LinearLayout>
还需要在drawable资源broder.xml中添加
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<stroke
android:width="3dip"
android:color="#d3d3d3" />
</shape>
values/Colors.xml 中的颜色
<?xml version="1.0" encoding="utf-8" ?>
<resources>
<item name="blue" type="color">#FF33B5E5</item>
</resources>
values/Strings.xml 中的面板标题
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="panel_title">Panel 1</string>
</resources>
至于按钮和动画可以分开添加。
【讨论】: