热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

短视频app源码,Android开发底部滑出菜单

短视频app源码,Android开发底部滑出菜单首先依赖三方库implementationandroidx.appcompat:appcompat:1.2.0im

短视频app源码,Android开发底部滑出菜单

首先依赖三方库

implementation 'androidx.appcompat:appcompat:1.2.0'implementation 'com.google.android.material:material:1.3.0'

再看主页面的布局

<?xml version&#61;"1.0" encoding&#61;"utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android&#61;"http://schemas.android.com/apk/res/android"xmlns:app&#61;"http://schemas.android.com/apk/res-auto"android:id&#61;"&#64;&#43;id/cl_chouti"android:layout_width&#61;"match_parent"android:layout_height&#61;"match_parent"><FrameLayoutandroid:layout_width&#61;"match_parent"android:layout_height&#61;"match_parent"><TextViewandroid:layout_width&#61;"match_parent"android:layout_height&#61;"match_parent"android:gravity&#61;"center"android:text&#61;"测试数据" /></FrameLayout><!--behavior_hideable布局是否可以哦隐藏--><RelativeLayoutandroid:id&#61;"&#64;&#43;id/bottom_sheet"android:layout_width&#61;"match_parent"android:layout_height&#61;"wrap_content"android:layout_alignParentBottom&#61;"true"app:behavior_hideable&#61;"false"app:behavior_peekHeight&#61;"160dp"app:layout_behavior&#61;"&#64;string/bottom_sheet_behavior"><include layout&#61;"&#64;layout/layout_bottom_sheet" /></RelativeLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
include文件<?xml version&#61;"1.0" encoding&#61;"utf-8"?>
<LinearLayout xmlns:android&#61;"http://schemas.android.com/apk/res/android"android:layout_width&#61;"match_parent"android:layout_height&#61;"wrap_content"android:background&#61;"#ffffff"android:orientation&#61;"vertical"><TextViewandroid:id&#61;"&#64;&#43;id/tv_tishi"android:layout_width&#61;"wrap_content"android:layout_height&#61;"wrap_content"android:layout_gravity&#61;"center_horizontal"android:layout_marginTop&#61;"40dp"android:text&#61;"附近热点"android:textSize&#61;"10sp" /><androidx.recyclerview.widget.RecyclerViewandroid:id&#61;"&#64;&#43;id/recyclerview"android:layout_width&#61;"match_parent"android:layout_height&#61;"300dp"android:background&#61;"&#64;color/red" />
</LinearLayout>

在看下使用方法

mainactivitypackage cn.xiayiye5.xiayiye5library.activity;import android.util.Log;
import android.view.View;
import android.widget.RelativeLayout;import androidx.annotation.NonNull;import com.google.android.material.bottomsheet.BottomSheetBehavior;import cn.xiayiye5.xiayiye5library.R;/*** &#64;author : xiayiye5* &#64;date : 2021/3/15 09:59* 类描述 :*/
public class BottomScrollerOutActivity extends BaseActivity {&#64;Overrideprotected int getLayoutView() {return R.layout.activity_scroller_out;}&#64;Overrideprotected void initId() {//底部抽屉栏展示地址RelativeLayout bottomSheet &#61; findViewById(R.id.bottom_sheet);BottomSheetBehavior<RelativeLayout> behavior &#61; BottomSheetBehavior.from(bottomSheet);//setBottomSheetCallback已过时behavior.addBottomSheetCallback(new BottomSheetBehavior.BottomSheetCallback() {&#64;Overridepublic void onStateChanged(&#64;NonNull View bottomSheet, &#64;BottomSheetBehavior.State int newState) {String state &#61; "null";switch (newState) {case 1:state &#61; "STATE_DRAGGING";//过渡状态此时用户正在向上或者向下拖动bottom sheetbreak;case 2:state &#61; "STATE_SETTLING"; // 视图从脱离手指自由滑动到最终停下的这一小段时间break;case 3:state &#61; "STATE_EXPANDED"; //处于完全展开的状态break;case 4:state &#61; "STATE_COLLAPSED"; //默认的折叠状态break;case 5:state &#61; "STATE_HIDDEN"; //下滑动完全隐藏 bottom sheetbreak;default:break;}}&#64;Overridepublic void onSlide(&#64;NonNull View bottomSheet, float slideOffset) {Log.d("BottomSheetDemo", "slideOffset:" &#43; slideOffset);}});}&#64;Overrideprotected void loadData() {}
}

以上就是短视频app源码&#xff0c;Android开发底部滑出菜单&#xff0c; 更多内容欢迎关注之后的文章


推荐阅读
  • 本文介绍如何使用 Android 的 Canvas 和 View 组件创建一个简单的绘图板应用程序,支持触摸绘画和保存图片功能。 ... [详细]
  • RecyclerView初步学习(一)
    RecyclerView初步学习(一)ReCyclerView提供了一种插件式的编程模式,除了提供ViewHolder缓存模式,还可以自定义动画,分割符,布局样式,相比于传统的ListVi ... [详细]
  • 本文介绍如何使用布局文件在Android应用中排列多行TextView和Button,使其占据屏幕的特定比例,并提供示例代码以帮助理解和实现。 ... [详细]
  • 本文介绍了Android开发中Intent的基本概念及其在不同Activity之间的数据传递方式,详细展示了如何通过Intent实现Activity间的跳转和数据传输。 ... [详细]
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • Android 九宫格布局详解及实现:人人网应用示例
    本文深入探讨了人人网Android应用中独特的九宫格布局设计,解析其背后的GridView实现原理,并提供详细的代码示例。这种布局方式不仅美观大方,而且在现代Android应用中较为少见,值得开发者借鉴。 ... [详细]
  • Android LED 数字字体的应用与实现
    本文介绍了一种适用于 Android 应用的 LED 数字字体(digital font),并详细描述了其在 UI 设计中的应用场景及其实现方法。这种字体常用于视频、广告倒计时等场景,能够增强视觉效果。 ... [详细]
  • Scala 实现 UTF-8 编码属性文件读取与克隆
    本文介绍如何使用 Scala 以 UTF-8 编码方式读取属性文件,并实现属性文件的克隆功能。通过这种方式,可以确保配置文件在多线程环境下的一致性和高效性。 ... [详细]
  • 本题探讨如何通过最大流算法解决农场排水系统的设计问题。题目要求计算从水源点到汇合点的最大水流速率,使用经典的EK(Edmonds-Karp)和Dinic算法进行求解。 ... [详细]
  • 本文详细介绍了如何在 Android 开发中高效地管理和使用资源,包括本地资源和系统资源的访问方法。通过实例和代码片段,帮助开发者更好地理解和应用资源管理的最佳实践。 ... [详细]
  • 本文详细介绍了 com.facebook.drawee.view.SimpleDraweeView 中的 setScaleType 方法,提供了多个实际代码示例,并解释了其在不同场景下的应用。 ... [详细]
  • 本文探讨了在Java中实现系统托盘最小化的两种方法:使用SWT库和JDK6自带的功能。通过这两种方式,开发者可以创建跨平台的应用程序,使窗口能够最小化到系统托盘,并提供丰富的交互功能。 ... [详细]
  • 优化局域网SSH连接延迟问题的解决方案
    本文介绍了解决局域网内SSH连接到服务器时出现长时间等待问题的方法。通过调整配置和优化网络设置,可以显著缩短SSH连接的时间。 ... [详细]
  • 优化 Android 按钮状态下的背景和文本颜色变化
    本文介绍如何通过 Android 的 Selector 实现按钮在不同状态下(如按压)的背景和文本颜色动态变化。我们将详细讲解实现步骤,并提供完整的代码示例。 ... [详细]
  • 在 Android 开发中,通过 Intent 启动 Activity 或 Service 时,可以使用 putExtra 方法传递数据。接收方可以通过 getIntent().getExtras() 获取这些数据。本文将介绍如何使用 RoboGuice 框架简化这一过程,特别是 @InjectExtra 注解的使用。 ... [详细]
author-avatar
txwd2008
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有