设置一个按钮按下按钮后从按钮处向上延伸出来一个有三个按钮的菜单同时原有界面不被遮挡使用kotlin语言在最新版android studio中编写请给出具体操作步骤和详细代码
- 在布局文件中添加一个按钮和一个LinearLayout(作为菜单容器):
<Button
android:id="@+id/menuButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Menu" />
<LinearLayout
android:id="@+id/menuContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone" >
<Button
android:id="@+id/menuItem1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Menu Item 1" />
<Button
android:id="@+id/menuItem2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Menu Item 2" />
<Button
android:id="@+id/menuItem3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Menu Item 3" />
</LinearLayout>
- 在Activity中获取按钮和菜单容器的引用,并为按钮添加点击事件:
val menuButton = findViewById<Button>(R.id.menuButton)
val menuContainer = findViewById<LinearLayout>(R.id.menuContainer)
menuButton.setOnClickListener {
if (menuContainer.visibility == View.GONE) {
menuContainer.visibility = View.VISIBLE
} else {
menuContainer.visibility = View.GONE
}
}
- 运行程序,点击按钮可以展开和收起菜单。
注意:在本例中,菜单容器默认设置为不可见(visibility属性为gone),点击按钮时根据当前状态切换可见性。如果需要实现更复杂的动画效果,可以使用属性动画等技术实现
原文地址: http://www.cveoy.top/t/topic/cFRW 著作权归作者所有。请勿转载和采集!