Android开发实战之底部Dialog弹出效果

  在Android开发中,有很多情况下我们需要使用到对话框,遗憾的是,安卓自带的对话框样式不能满足我们实际的需要,所以往往需要我们自定义对话框,具体做法:写一个对话框继承自Dialog实现他的一个构造方法(取决于你的用法),在OnCreate()中进行处理。当然更多情况下,你是不需要自己去写的,会抄代码一样也是一种本事,这里我介绍一种底部弹出的对话框,希望对你的学习和工作有所帮助,下面是效果图:

下面介绍具体做法:

导入依赖库:

dependencies {
    compile 'com.github.rey5137:material:1.2.2'
}

这是GitHup上一个基于Material Design的依赖库,对于这个库进行了优化。

下面是实现代码:

bottomInterPasswordDialog = new BottomSheetDialog(HomeActivity.this);
bottomInterPasswordDialog
.contentView(viewInterPassword)
.heightParam(windowHight/3)
.inDuration(500)
.outDuration(500)
.inInterpolator(new BounceInterpolator())
.outInterpolator(new AnticipateInterpolator())
.cancelable(true)
.show();

一行代码,轻松实现,contentView加入DIalog的View,inDuration进入屏幕时间,inInterpolator进入屏幕动画,cancelable,是否点击可以退出对话框,heightParam显示DIalog的高度。其中 Interpolator

在安卓中有几个定义:

AccelerateDecelerateInterpolator 在动画开始与结束的地方速率改变比较慢,在中间的时候加速

  AccelerateInterpolator  在动画开始的地方速率改变比较慢,然后开始加速

  AnticipateInterpolator 开始的时候向后然后向前甩

  AnticipateOvershootInterpolator 开始的时候向后然后向前甩一定值后返回最后的值

  BounceInterpolator   动画结束的时候弹起

  CycleInterpolator 动画循环播放特定的次数,速率改变沿着正弦曲线

  DecelerateInterpolator 在动画开始的地方快然后慢

  LinearInterpolator   以常量速率改变

  OvershootInterpolator    向前甩一定值后再回到原来位置

当然,如果这些满足不了你的需求,你还可以自己定义。具体很简单,我这里就不多说,希望这篇博客对你有所帮助,如果有疑问欢迎下方留言。

转载于:https://www.cnblogs.com/lovelyYakir/p/5836013.html

Dialog实现从底部弹出、从左到右滑入滑出等动画 在dialog中添加如下代码: // 动画持续的时间 private final int mAnimDuration = 250; // 显示按钮布局的动画 private ObjectAnimator mShowAnim = null; // 隐藏按钮布局的动画 private ObjectAnimator mHideAnim = null; ... 阅读详情

相关推荐

Android 好看的底部弹出UI对话框

应用选择对话框的实现 1. 效果预览动图 实现代码:github 代码在包名:programselectdialog中; 2.实现思路 1.布局使用的是ConstraintLayout 2.应用选择实现是去继承Dialog 3.在类中暴露出接口,获取点击的信息 3.代码 3.1 select_dialog.xml //对话框UI样式 <androidx.constraintl...

fz951230509的博客 2046

android各种提示Dialog 弹出框

messageTv.setVisibility(View.VISIBLE); } return dialog; } public static Dialog getCustomDialog(final Activity activity, View view, boolean dismissTouchOutside, boolean cancelable, int theme) { //Dialog dialog = theme > 0 ? new FullScreenDialogHUD(activi

m0_64319455的博客 663

Android 底部弹出dialog与动画实现指南

创建自定义Dialog布局是提升Android应用用户交互体验的关键步骤。一个精心设计的Dialog可以增加应用的专业度,同时使用户操作更加便捷。本章将引导您了解如何从零开始创建一个自定义Dialog布局,并实现基础的UI设计。在设计Android应用时,对话框(Dialog)是与用户交互的重要组件之一。自定义Dialog能够提供更丰富的界面表现形式和更灵活的交互方式。为了实现自定义Dialog,我们需要了解其继承关系、构造过程以及事件处理机制。

weixin_36364707的博客 986

使用DialogFragment的一些感受及防踩坑经验(getActivity、getDialog为空,cancelable无效等)

前言 安卓里面创建对话框的方式其实蛮多的。Dialog、AlertDialog、DialogFragment、PopupWindow甚至Activity设置主题为Dialog也能创建对话框。

cjs1534717040的专栏 3417

android底部导航(选项卡)+网格界面实例

底部导航栏+有网格线的网格布局,网格有图片可触发 TabActivity + RecyclerView实现,完整demo下载导入即可执行

MyGuideView1_android底部左右滑动(流行Android主界面).rar

MyGuideView1_android底部左右滑动(流行Android主界面).rar

Android Dialog总结

概述: android开发中最常用的就是Dialog类,除了自定义dialog布局,最多的就是用在弹出对话框、进度条、输入框、单选、复选框。 1、选择对话框: AlertDialog.Builder dialog = new AlertDialog.Builder(this); dialog.setTitle("选择对话框"); dialog.setMessage("请选择确

Kiven 每天都需要有所获,每天都需要进步......... 544

免费测试国外大模型Claude 3.7 Sonnet API:无需api key(秘钥)

Claude 3.7 Sonnet是Anthropic公司推出的第三代Claude系列AI模型中的中规模版本(2024年发布),在性能与效率间实现平衡。该模型基于改进的Transformer架构,支持128K上下文窗口,擅长复杂推理、数学计算和创意写作,在GSM8K数学基准测试中准确率达92%。其采用"宪法AI"伦理框架,通过多轮对抗训练减少有害输出,同时新增多模态理解能力(可解析图片/图表内容)。Claude 3.7 Sonnet是Anthropic推出的高效轻量级大模型,主打快速响应与成本优化。

Explinks的博客 1497

Android实现从底部弹出Dialog(带动画效果)

实现效果如图 1.dialog_pick_avatar.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" an...

qq_36356379的博客 3155

【异常】解决JDK21升级中的SecurityException: JCE无法验证BC提供者问题

本文详细解析了JDK21升级中常见的SecurityException: JCE无法验证BC提供者问题的根源与解决方案。核心在于JDK21强化了JCE安全验证,导致签名不合规的老版本Bouncy Castle库被拒绝。文章提供了通过Maven依赖树精准定位、排除旧版本并引入兼容的bcprov-jdk18on新库的完整步骤,以及清理缓存等实战技巧,帮助开发者彻底解决此兼容性问题。

weixin_29197051的博客 490

4D毫米波雷达:高度信息与微多普勒效应

4D毫米波雷达:高度信息与微多普勒效应​ ,人工智能,计算机视觉,大模型,AI,本文深入解析4D毫米波雷达的高度信息获取与微多普勒效应。4D毫米波雷达通过MIMO技术、垂直天线布局及相位差计算等获取高度信息,相较传统雷达更精准。微多普勒效应由目标微运动引发,可用于目标识别、分类和运动监测。文中结合自动驾驶、安防监控案例,分析技术挑战与未来趋势,如信号干扰、数据处理复杂,未来将向高精度、与其他传感器融合发展,展现出在多领域的巨大应用潜力。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 9万+

Android实现从底部弹出的Dialog

1.点击按钮(按钮的点击事件在此不在赘述,接下来直接写底部弹框的实现方式和样式的设计) 2.弹框 Dialog dialog = new Dialog(context, R.style.ActionSheetDialogStyle); //填充对话框的布局 inflate = LayoutInflater.from(contex...

a_sid的博客 1943

【控制模块路径跟踪算法】PID控制算法实现路径跟踪(附C++代码)

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对PID控制算法实现路径跟踪–飞思卡尔的方法做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容PID属于无模型控制,调节三个环节的参数会产生什么影响根据控制对象的不同也会有很大差别PID形象解释小明接到这样一个任务:有一个水缸点漏水(而且漏水的速度还不一定固定不变),要求水面高度维持在某个位置,一旦发现水面高度低于要求位置,就要往水缸里加水。

qq_35635374的博客 2386

140款Android开源优秀项目源码

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

quan333的博客 3204

LeRobot 入门教程(九)使用 Android、iOS 手机控制机械臂

本指南详细介绍了如何使用iOS/Android手机远程控制机器人。内容包括:1)安装依赖(pip install leroobot[phone]);2)平台支持说明(iOS需HEBI Mobile I/O应用/Android用WebXR);3)手机方向校准方法;4)控制模式设定(按钮/手势);5)示例脚本使用(遥操作/数据记录/回放/策略评估);6)关键参数配置(运动学/安全限制/夹爪控制);7)故障排查方法。支持ROS2集成,提供URDF文件处理、逆向运动学计算和实时可视化功能,适用于物理机器人和仿真环境

2506_90492529的博客 1658

NSIS教程(6): 使用第三方插件

NSIS内置了很多指令,这些指令可以满足我们基本需求,但难免会遇到NSIS没有内置的功能,如进程操作,后台运行(即多线程),7z压缩等等,这个时候我们就需要借助第三方插件来满足我们所需要的功能了。 一、插件获取 NSIS官方收录插件的网址是:http://nsis.sourceforge.net/Category:Plugins,我们可以在这个网站上查找和下载我们需要的插件,该网站上针对每

while(1) { smile(); } 9万+

Android 基本动画之Dialog滑动弹入弹出效果

最近做了一个项目,大量的用到了Dialog,但是考虑到Dialog的弹窗比较单一,所以准备了一些基本动画,这里做一下记录! 闲话不多说,请开始我们的表演!这里先上图看一下大概有哪些东西,GIF就不用想了,忘记录屏了嘎嘎嘎..... 好了进入正文! 首先生成对象 BaseDialog dialog = new BaseDialog(this); 一、Dialog顶部弹出退出效果 dialog.contentView(R.layout.dialog_photo_top_bottom)

ZachRecord的博客 2018

Android软键盘系统深度解析:架构、原理与实现

Android软键盘系统深度解析:架构与实现原理 本文系统剖析了Android软键盘的核心工作机制。作为系统级输入服务,软键盘具有双重属性:既是可安装的独立应用,又深度集成于系统框架中。文章详细解读了软键盘的系统架构,包括其与InputMethodManagerService(IMMS)和WindowManagerService(WMS)的交互机制,以及通过InputConnection实现的跨进程通信流程。同时分析了输入法窗口的特殊管理策略、布局调整模式,并深入探讨了输入预测引擎的实现原理,包括词典加载、

保持专注,保持热爱 115

android 动画效果 translate 详解,包括 Dialog 上方弹出,底部弹出,中间弹出

先给出动画效果代码,可以直接拿去用: 1.上方弹出: 滑入动画( actionsheet_dialog_in): &lt;translate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="200" android:fromYDelta="-100%" andr...

wuqingsen1的博客 6959

2篇5章1节:实验流行病学的核心特征和设计原则

本文系统阐释实验流行病学的核心定义、四大核心特征、四大基本原则及主流设计类型,结合骨科、肿瘤科、儿科、精神科、内外妇儿及公共卫生等多学科临床实践案例,具象化解读人为干预、随机分组、平行对照、前瞻性设计的核心内涵与应用价值。同时,规范梳理对照、随机、盲法、重复四大研究基本原则,详细介绍临床试验、现场试验、社区试验三类主流研究设计的适配场景与应用差异。

MD Code 169

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

从屏幕底部弹出的dialog

先上下效果图: 简单实现了一个在项目中比较常用的效果,主要实现有两点: 1.dialog的弹入弹出有动画效果 2.能控制dialog弹出的最大高度 好,目标明确,开撸 自定义BottomDialog package com.example.zhoumohan.luckymorning.common.widget; import android.app.Dialog; impor...

qq_27246079的博客 2906

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

android中底部弹窗,Android实现从底部弹出的Dialog示例(一)

一.概述先给大家看一下效果图:点击中间的显示弹框按钮,从底部弹出来一个对话框,用户可以点击拍照或者从相册选择进行相应的操作,下面看看怎么实现。二.代码实现主页面布局文件,很简单,一个按钮,响应点击事件:xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/t...

weixin_42468901的博客 2872

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Android之底部弹出框 Dialog

1、效果图: 2、定义dialog属性样式 <!-- Dialog 样式--> <style name="dialogStyle" parent="@android:style/Theme.Holo.Dialog"> <!-- 是否有边框 --> <item name="android:window...

月丶夜的博客 972

Android 底部弹出Dialog

很多App都需要点击某一个Button就会从底部弹出一个Dialog,就像微信的分享等 话不多说,直接上代码了 自定义一个方法 bottomDialog = new Dialog(this, R.style.BottomDialog); //加载自己的布局 View contentView = LayoutInflater.from(this).inflate(R....

你的外祖父的博客 1026

Android开发,实现底部弹出菜单

【代码】Android开发,实现底部弹出菜单。

商城app+新闻app+备忘录记事本app视频教程在某站【浩宇软件开发】 1371
上一篇: Android开发实战之拥有Material Design风格的折叠布局
下一篇: Java中的几种设计模式
diebing0439
博客等级 码龄11年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值