当前位置: 首页 > news >正文

漳州商城网站建设建筑素材网站

漳州商城网站建设,建筑素材网站,建设管理网站,辽宁省建设工程交易网目录 一、BottomSheetBehavior 介绍 二、BottomSheetBehavior 基本使用 2.1 在 CoordinatorLayout 中添加底部工作表#xff1a; 2.2 在代码中获取 BottomSheetBehavior 实例#xff1a; 2.3 设置工作表的状态#xff0c;如展开、折叠等 2.4 工作表的状态 三、Bottom…目录 一、BottomSheetBehavior 介绍 二、BottomSheetBehavior 基本使用 2.1 在 CoordinatorLayout 中添加底部工作表 2.2 在代码中获取 BottomSheetBehavior 实例 2.3 设置工作表的状态如展开、折叠等 2.4 工作表的状态 三、BottomSheetDialog 3.1 创建 BottomSheetDialog 实例 3.2 设置对话框内容 3.3 显示对话框 3.4 关闭对话框 3.5 布局 四、注意事项 一、BottomSheetBehavior 介绍 BottomSheetBehavior 是 Material 库中的一个类它用于实现底部工作表Bottom Sheet的交互行为。底部工作表是一个可以从屏幕底部向上滑动的交互式面板通常用于显示与当前内容相关的补充信息或操作选项(如分享)。 BottomSheetBehavior 允许你以可控制的方式实现底部工作表的显示和隐藏以及与用户交互时的动画和手势。它提供了一些方法和回调来监控工作表的状态例如折叠、展开或中间状态以便你可以相应地调整应用程序的行为。 你可以在布局文件中使用 CoordinatorLayout 和 BottomSheetBehavior 来定义一个视图作为底部工作表并通过设置 app:layout_behavior 属性来关联 BottomSheetBehavior从而定义其行为。 二、BottomSheetBehavior 基本使用 要使用 BottomSheetBehavior首先需要在布局文件中定义一个布局作为底部工作表然后将其关联到 BottomSheetBehavior。以下是一个简单的步骤示例 2.1 在 CoordinatorLayout 中添加底部工作表 app:layout_behaviorstring/bottom_sheet_behavior 这个属性是必须的否则无联动效果。 ?xml version1.0 encodingutf-8? androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent!-- 主页面布局元素 --LinearLayoutandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:padding20dpandroid:orientationverticalButtonandroid:idid/btn_showandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:textShow BottomSheets /Buttonandroid:idid/btn_show_dialogandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:textShow BottomSheet Dialog //LinearLayout!-- 底部工作表的内容布局 --androidx.core.widget.NestedScrollViewandroid:idid/bottom_sheetandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentapp:layout_constraintEnd_toEndOfparentapp:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toBottomOfparentapp:behavior_hideabletrueapp:behavior_peekHeight0dpapp:layout_behaviorstring/bottom_sheet_behavior!-- 在这里添加底部工作表的内容 --LinearLayoutandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:orientationverticalTextViewandroid:idid/tvandroid:layout_widthmatch_parentandroid:layout_height50dpandroid:backgroundcolor/purple_200android:gravitycenterandroid:textColorandroid:color/whiteandroid:textBottomSheets,上下拖动试试/ImageViewandroid:layout_widthmatch_parentandroid:layout_height200dpandroid:layout_margin10dpandroid:scaleTypecenterCropandroid:srcmipmap/bg//LinearLayout/androidx.core.widget.NestedScrollView /androidx.coordinatorlayout.widget.CoordinatorLayout2.2 在代码中获取 BottomSheetBehavior 实例 class BottomSheetsActivity:AppCompatActivity() {private lateinit var binding: ActivityBottomSheetsBindingoverride fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)binding  ActivityBottomSheetsBinding.inflate(layoutInflater)setContentView(binding.root)// 获取 BottomSheetBehaviorval behavior  BottomSheetBehavior.fromView(binding.bottomSheet)// 设置底部工作表的状态监听器和行为behavior.addBottomSheetCallback(object : BottomSheetCallback() {override fun onStateChanged(bottomSheet: View, newState: Int) {Log.i(BottomSheetBehavior, newState: $newState)}override fun onSlide(bottomSheet: View, slideOffset: Float) {Log.i(BottomSheetBehavior, slideOffset: $slideOffset)}})        }}监听内容 2.3 设置工作表的状态如展开、折叠等 通过setState即可直接展开、折叠、隐藏 binding.btnShow.setOnClickListener {//判断 BottomSheetBehavior 的状态if (behavior.state  BottomSheetBehavior.STATE_EXPANDED) {//如果展开的话则关闭behavior.setState(BottomSheetBehavior.STATE_COLLAPSED)} else {//如果未展开则展开behavior.setState(BottomSheetBehavior.STATE_EXPANDED)}}通过2.1-2.3你可以在你的 Android 应用中实现一个基本的底部工作表并控制它的显示、隐藏以及与用户交互时的行为和动画效果。 2.4 工作表的状态 /**正在拖动中*/ public static final int STATE_DRAGGING1、/**正在向下收起*/ public static final int STATE_SETLING2/**展开*/ public static int STATE_EXPANDED3/**折叠*/ public static final int STATE_COLLAPSED4/**隐藏*/ public static final int STATE_HIDDEN5/**底部图纸展开一半当fitToContents为false时使用*/ public static final int STATE_HALF_EXPANDED6三、BottomSheetDialog BottomSheetDialog 是 Android 中 Dialog 类的一种变体它以底部工作表Bottom Sheet的形式展示内容。底部工作表对话框从屏幕底部弹出提供一种非常流行的用户界面模式用于显示与当前操作或内容相关的选项、操作或信息。 与普通的对话框不同底部工作表对话框以一种半透明的方式在底部显示用户可以通过向上滑动的手势将其展开或关闭。这种对话框通常用于显示辅助操作、快捷方式、选项或其他次要信息以提供更流畅的用户体验。 它提供了一个简便的方法在底部以对话框的形式展示内容。以下是一个使用 BottomSheetDialog 的简单示例 3.1 创建 BottomSheetDialog 实例 val mBottomSheetDialog  BottomSheetDialog(thisBottomSheetsActivity)3.2 设置对话框内容 val mBottomSheetDialog  BottomSheetDialog(thisBottomSheetsActivity) val bt: View  layoutInflater.inflate(R.layout.dialog_bottom_sheet, null) mBottomSheetDialog.setContentView(bt) // 设置对话框其他属性可选 mBottomSheetDialog.setCancelable(true); // 设置是否可以通过点击对话框外部取消对话框 mBottomSheetDialog.setCanceledOnTouchOutside(true); // 设置是否可以通过点击对话框外部区域取消对话框3.3 显示对话框 mBottomSheetDialog.show()BottomSheetDialog 将使用你提供的布局作为其内容并以底部工作表的样式显示在屏幕上。 3.4 关闭对话框 mBottomSheetDialog.dismiss()记得在不需要时及时释放对话框以避免内存泄漏 3.5 布局 布局就是常规布局没有其他需要特殊注意的地方。 ?xml version1.0 encodingutf-8? androidx.core.widget.NestedScrollViewxmlns:androidhttp://schemas.android.com/apk/res/androidandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentLinearLayoutandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:orientationverticalTextViewandroid:layout_widthmatch_parentandroid:layout_height100dpandroid:backgroundcolor/purple_200android:gravitycenterandroid:text好好学习android:textColorandroid:color/whiteandroid:textSize18sp/ImageView.../TextView.../ImageView..//LinearLayout /androidx.core.widget.NestedScrollView四、注意事项 1.「内容高度与滚动」 底部对话框内容应该被设计为可滚动的特别是当内容超出屏幕高度时。这样可以确保用户在查看内容时能够进行滚动操作而不会出现内容被遮挡的情况。 2.「避免内容过多」 底部对话框的设计目的是展示次要信息或辅助操作不应该用于显示大量内容。保持内容简洁明了让用户能够快速浏览和理解。 3.「可取消性」 考虑是否允许用户通过点击对话框外部或返回按钮来取消底部对话框。这可以通过设置 setCancelable() 和 setCanceledOnTouchOutside() 来实现。 4.「适配不同屏幕尺寸」 底部对话框在不同屏幕尺寸上可能会有不同的显示效果因此确保内容在不同尺寸和密度的屏幕上均能正常显示和操作。 5.「测试交互性能」 在使用底部对话框前进行交互性能测试是很重要的。特别是当对话框中包含复杂的交互元素或大量数据时要确保在各种设备和条件下对话框的滑动和交互性能都良好。 6.「释放资源」 当底部对话框不再需要时确保及时释放资源调用 dismiss() 方法关闭对话框以避免内存泄漏。
http://www.pierceye.com/news/176610/

相关文章:

  • 如何设计服装网站首页网站建设比较好的公司
  • 微信网站的链接标志图片如何做公众号如何创建
  • 建站公司建的网站能改动吗怎样设置默认网站
  • 高并发电商网站开发辽宁省朝阳市做网站
  • 公司做网站有用吗合肥企业快速建站
  • 因脉网站建设公司怎么呀韩国网站开发建设技术特点
  • 网站备案 个人 单位安徽网站建设推广
  • 黔江网站制作网站招标建设
  • 网站注册公司目前最好的引流方法
  • 小米wifi设置网址入口网站通信工程建设网站
  • 深圳专业网站建在线做插画的网站
  • 站长之家网站查询怎么样创建自己的小程序
  • 站酷海报设计图片网站备份怎么做
  • 做网站挣钱么云市场 wordpress
  • 网站域名管理规范seo专员是什么
  • 网站制作+资讯网站特色栏目重要性
  • 网站qq 微信分享怎么做的随州市住房和城乡建设部网站
  • 资源网站建设多少钱手机网站页面文字做多大
  • 烟台专业做网站宜昌教育云网站建设
  • 慕课联盟网站开发实战wordpress怎样修改域名
  • 什么电脑做网站前段用旅游网站建设的利益
  • 做 暧视频在线观看网站花都网站建设设计
  • 黄石企业网站设计服务外包有哪些
  • 团队合作网站网站制作的报价大约是多少
  • 网站在线留言系统能挣钱的平台 正规的
  • 冀州网站制作泉州握旗公司网站建设
  • 免费php企业网站苏州网站建设多少钱
  • 重庆网站制作设计抚州网站建设
  • 国外psd网页模板网站免费学校网站管理系统
  • 网站开发合作合同范本电子商务营销渠道有哪些