我想将滑动抽屉添加到我的一项活动中,但发现自 API 17 起已弃用该抽屉。
我有兴趣做类似于this one from androhub的事情。
弹出的抽屉/活动/片段内部只有按钮。我需要那个手柄按钮,并且我希望抽屉向上移动,直到手柄按钮触及屏幕顶部为止。
您能指出我可以用来实现这一目标吗?
答案 0 :(得分:1)
BottomSheet将从底部打开。 DrawerLayout将从侧面打开。
答案 1 :(得分:1)
您可以使用BottomSheetDialog实现相同的功能。
选中下面的链接以供参考。
https://developer.android.com/reference/android/support/design/widget/BottomSheetDialog
答案 2 :(得分:1)
This是我为您询问的事情找到的最好的例子,请告诉我它是否有益。
答案 3 :(得分:0)
您可以通过使用Umano的AndroidSlidingUpPanel软件包来实现此目标
导入图书馆
dependencies {
repositories {
mavenCentral()
}
implement 'com.sothree.slidinguppanel:library:3.4.0'
}
将com.sothree.slidinguppanel.SlidingUpPanelLayout包含为活动布局中的根元素。 布局必须将重力设置为顶部或底部。确保它有两个孩子。 第一个孩子是您的主要布局。第二个孩子是您上滑面板的布局。 主布局的宽度和高度应设置为match_parent。滑动布局的宽度应设置为match_parent,高度应设置为match_parent,wrap_content或最大所需高度。 如果您想将高度定义为屏幕的垂直线,请将其设置为match_parent并为滑动视图定义layout_weight属性。 默认情况下,整个面板将充当拖动区域并拦截点击和拖动事件
例如xml
<com.sothree.slidinguppanel.SlidingUpPanelLayout
xmlns:sothree="http://schemas.android.com/apk/res-auto"
android:id="@+id/sliding_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="bottom"
sothree:umanoPanelHeight="68dp"
sothree:umanoShadowHeight="4dp">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:text="Main Content"
android:textSize="16sp" />
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center|top"
android:text="The Awesome Sliding Up Panel"
android:textSize="16sp" />
</com.sothree.slidinguppanel.SlidingUpPanelLayout>