SnackBar 简单使用

2023-11-09

1.简介

Snackbar是Android Support Design Library库中的一个控件,可以在屏幕底部快速弹出消息,比Toast更加好用.可以添加点击行为。多用于结合协调布局使用(CoordinatorLayout)。

 implementation 'com.android.support:design:28.0.0'

2.常用方法

  • make(View view, CharSequence text, int duration) 创建对象 ;view是父容器,也是锚点。
  • duration: 显示时长
  • show 显示
  • duration: 显示时长(LENGTH_INDEFINITE 一直显示;LENGTH_SHORT;LENGTH_LONG )
  • dismiss() 隐藏
  • isShown() 是否显示
  • setText 内容
  • setActionTextColor 行为文本颜色

3.案例

      Snackbar.make(mClick,"GGGGGGGGGGG",Snackbar.LENGTH_SHORT)
      			
                .setAction("UUUUUUUU", new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Log.d(TAG, "onClick: ");
                    }
                })
                .show();

4.高级案例

结合协调布局使用,符合Material Design 规范。
在这里插入图片描述

Snackbar.make(coordinatorLayout,"这是massage", Snackbar.LENGTH_LONG).setAction("这是action", new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Toast.makeText(MainActivity.this,"你点击了action",Toast.LENGTH_SHORT).show();
     }
 }).show();

如果你想在Snackbar的显示时或消失时做些什么,可以调用Snackbar的setCallback()方法。

参考:https://www.jianshu.com/p/cd1e80e64311

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SnackBar 简单使用 的相关文章

  • Android:如何获取设备的真实屏幕尺寸?

    我尝试了不同的方法来获取设备的屏幕尺寸 但它总是返回错误的尺寸 791x480代替854x480 可能是导航栏的原因 我的设备当前运行的是 JellyBean 4 1 1 I tried Display display getWindowM
  • event.getSource() 返回 null android 中的可访问性

    我尝试使用 DashLane 等辅助服务或其他一些使用辅助服务的应用程序来填充 EditText 字段 我正在使用聚焦事件视图 当 EditText 获得焦点时 事件开始但是getSource 返回空值 Code Accessibility
  • 如何创建不在 ScrollView 中或已禁用 ScrollView 的 ListView?

    我想要 ListView 中的一些好东西 例如能够使用 ListAdapter 和项目选择等 但我不想要其中的 ScrollView 部分 我想以不同的方式自己实现该部分 为什么或如何做到这一点并不是这个问题的重点 所以请不要问 为什么 有
  • Android 客户端中经过身份验证的 Cloud Endpoint 间歇性失败

    我有一个生产中的应用程序 在调用经过身份验证的云端点时收到大量强制 关闭 最能说明问题的是 java lang IllegalArgumentException 服务未注册 com google android gms internal e
  • 一项活动中有多个 YouTube 玩家

    我正在使用 Youtube Android Player API 如下所述 https developers google com youtube android player https developers google com you
  • AppCompatActivity 中的 setListAdapter

    我有一个具有功能的程序listArray with extends AppCompatActivity但我的代码有错误 my code 新闻活动 public class NewsActivity extends AppCompatActi
  • 如何在android中动态添加项目到listview

    有谁能够帮助我 我正在尝试在 Android 中创建一个 ListView 并且我正在尝试使用代码 不使用 XML 将项目加载到其中 这是我到目前为止的代码 tweetList ListView this findViewById R id
  • 所选设备不兼容 - Android Studio

    我之前已经解决了这个问题 但现在不能 我需要永久修复 在测试我的应用程序时 Android Studio 中的一切都很顺利 我现在遇到了 所选设备不兼容 的问题 当我去运行应用程序时 我想知道如何阻止它读取我手机的 API 作为 1 而不是
  • 通过 adb 将触摸事件发送到设备[重复]

    这个问题在这里已经有答案了 我正在尝试使用以下方式将触摸事件发送到设备adb shell命令 这样我就可以为 UI 测试做一些基本的自动化 我已经关注了之前一些关于此问题的讨论 我确认了获取事件并使用sendevent 为每次触摸发送 6
  • NotificationCompact.Builder 和 ActionBarSherlock 的问题

    在下面的代码中 Eclipse发现错误 The method build is undefined for the type NotificationCompat Builder 在添加之前一切正常ActionBarSherlock htt
  • 在特定时间启动应用程序

    我想知道是否有可能 以及如何 在特定时间启动我的应用程序 就像在特定时间响起的闹钟一样 假设我希望我的应用程序在早上 8 点启动 这可行吗 您可以使用 AlarmManager 来完成此操作 这是一个简短的示例 首先你需要设置闹钟 Alar
  • 服务中的膨胀视图显示视图,但不显示布局内的 ImageView

    我已经成功地在服务中扩展了我的布局 但是它没有显示ImageView在 的里面Inflated Layout我不知道为什么 我设置了一个onClickListener在图像视图上 它工作得很好 当我单击绿色方块时记录并停止服务 唯一的问题是
  • 在 Android 10 上使用 RNFetchBlob 的下载管理器 React Native 下载文件

    我需要使用 React Native 应用程序将文件下载到用户的下载目录rn 获取 blob https www npmjs com package rn fetch blob 但似乎与 Android 10 不兼容 因为我收到错误 首先我
  • ActivityManager.getRunningTasks 已弃用 android

    我正在 android 中处理推送通知 我使用下面的方法来显示通知 但问题是现在 ActivityManager getRunningTasks 1 正在被弃用 从一个 stackoverflow 问题中我读到 你可以使用getAppTas
  • 我如何访问警报内容提供商

    我正在尝试访问警报提供商以获取所有启用的警报信息 所以我写了这个 public static final Uri CONTENT URI Uri parse content com android deskclock alarm Conte
  • 如何在android listview或线性布局中动态设置marginBottom?

    friends 我想使用java代码或动态设置layout marginBottom 在列表视图或线性布局中 有人指导我如何实现这一目标吗 任何帮助 将不胜感激 ListView lst getListView LinearLayout L
  • 带 Retrofit 的简单登录表单

    我开始使用 Retrofit 但我坚持这个简单的步骤 我有一个登录表单 我正在尝试通过服务器进行身份验证 但我无法发送请求 这是我尝试过的 我的改造客户 private static OkHttpClient Builder httpCli
  • 如何在Eclipse中配置Tesseract进行Android开发?

    我已经从事 Android 工作 6 个月了 至此我对Android开发有了基本的了解 现在我想使用 Tesseract 开发一个 OCR Android 应用程序 为此 我从 Tesseract 下载了 android ndk r6b t
  • Marshmallow 中的手电筒控制

    我对最新 Marshmallow 版本中的相机 更具体地说是手电筒 有疑问 在任何棉花糖之前的版本上 我需要执行以下操作来打开 关闭闪光灯 private void turnFlashOn final Camera camera int f
  • gradle 构建工具版本从 1.2.3 升级到 1.3.1 的问题

    我已将 gradle 构建工具从 1 2 3 升级到 1 3 1 并开始在 gradle 同步上看到以下错误 我使用 1 2 3 版本没有任何问题 我使用的是 gradleVersion 2 3 无论如何我可以避免这个错误吗 错误 您的项目

随机推荐

  • 函数的声明和定义

    C语言中一个完整的函数由函数首部和函数体构成 而且定义函数时两者都是必不可少的 函数声明表示有这么个函数了 函数定义就是具体实现了 举个例子 函数声明 int fun int a int b 函数定义 int fun int a int b
  • 目标跟踪算法三:Modeling and Propagating CNNs in a Tree Structure for Visual Tracking (VOT2016冠军)

    目标跟踪算法三 Modeling and Propagating CNNs in a Tree Structure for Visual Tracking VOT2016冠军 文章链接 https arxiv org pdf 1608 07
  • 跟着英雄刷算法-因式分解和枚举

    补上前天落下的 题目一 int kthFactor int n int k int cnt 0 for int i 1 i lt n i if n i 0 k if 0 k return i return 1 题目二 int closest
  • 使用Keras和深度确定性策略(DDPG)来玩TORCS

    背景 DQN的一大局限性是输出 动作是离散的 而车辆转向是连续的 使DQN适应连续域的一种明显方法是简单的离散化操作空间 然而只是简单地离散化操作空间会受到 维度的诅咒 问题 深度确定性策略由三种技术结合 1 确定性策略梯度算法 输出的是每
  • 由用户反映DroidPilot安装之后,License没有同步安装 - 解决办法

    由用户反映DroidPilot安装之后 License没有同步安装 这个原因是在有些机器的注册表无法正常设置License项引起的的 只需手工重新安装一次License就可以解决 方法如下 1 启动cmd命令行 2 进入脚本设计器安装目录
  • 只保留日期_如何在excel中自动填写日期,以5分钟为增量,批量生成数字

    日期和时间可以自动填充 Excel中的数字除外 日期可以按天 月 年和工作日填充 时间可以按小时 分钟和秒递增填充 填写日期的方法有三种 一种是拖拽自动填写 另一种是双击单元格填写手柄自动填写 第三种是用序列填写大量数据 如填写一年 几年甚
  • 【爬虫】JS逆向解决反爬问题系列4——nonce破解

    欢迎来到我的博客 作者 秋无之地 简介 CSDN爬虫 后端 大数据领域创作者 目前从事python爬虫 后端和大数据等相关工作 主要擅长领域有 爬虫 后端 大数据开发 数据分析等 欢迎小伙伴们点赞 收藏 留言 本次博客内容将讲解关于nonc
  • a标签禁用

    a 链接 a 以上写法不能实现a标签禁用功能 Can t bind to disabled since it isn t a known property of a 正确写法 a href 链接 a href一定要加 不加实现不了置灰 a
  • Kettle是什么(ETL工具)

    1 Kettle是什么 Kettle是一个开源的ETL工具 全称为Pentaho Data Integration PDI 它可以用于从不同的数据源中提取数据 进行转换和加载到目标数据源中 Kettle支持多种数据源的操作 如关系型数据库
  • 【笔记~】使用js实现搜索排序(el-table)

    直接看代码 div div class serchBox div div
  • TAQS.IM Solo v1.2.11 WiN 中东方韵律合成器

    TAQSIM Solo 不仅准备了虚拟合成与采样播放的多层级混合引擎 还为音乐创作者们带来了大量现代世界音乐中的音色 不仅包括合成音色 还有与世界各地音乐家合作带来的乐器音色 比如弦乐器 TAQSIM Solo 采用了三层级合成器引擎 每个
  • Python3、setuptools、Pip3安装详解

    博客核心内容 1 Python3安装 2 setuptools安装 3 Pip3安装 之所以写这篇博客 也是有很多原因了 每次安装都要从网上各种百度 网上的答案也是各种各样 于是决定好好总结一下 下面是我在安装的过程中参考的几篇博客 附上相
  • nft术语解释

    NFT 爱好者 原文用的是nerds 翻译作书呆子 我感觉不太合理 我写成爱好者 在谈论这个东西时候总是会有一堆让人眼花缭乱的术语 对非圈内人来说会感觉难以理解 这里整理了23个术语解释来帮助你理解 作为nerds的其中之一 我过滤掉了一些
  • Mysql中的日期与时间类型

    MySQL有多种表示日期和时间的数据类型 不同的版本可能有所差异 MySQL8 0版本支持的日期和时间类型主要有 YEAR类型 TIME类型 DATE类型 DATETIME类型和TIMESTAMP类型 YEAR类型通常用来表示年 DATE类
  • Vue Cli3.x-4.x 实现rem适配

    Vue移动端rem适配 1 安装lib flexible和postcss px2rem npm install lib flexible save npm install postcss px2rem save 2 在main js中引入l
  • JavaScript 数组塌陷

    概念 数组塌陷 在对数组进行操作的时候 会使数组的长度产生变化 同时 操作的数组那个项的下一个索引会被跳过 从而造成数组的某项会被跳过 这种叫做数组塌陷现象 例子 let arr 1 2 3 3 3 3 3 3 3 4 5 6 7 8 9
  • Nodejs 快速学习

    1 Nodejs快速入门 1 1 安装 官网 https nodejs org zh cn download 一路next安装即可 cmd查看 是否 安装成功 1 2 什么是Nodejs 注意 ES6语法完全兼容 1 3 第一个Nodejs
  • [python+nltk] 自然语言处理简单介绍和NLTK坏境配置及入门知识(一)

    本文主要是总结最近学习的论文 书籍相关知识 主要是Natural Language Pracessing 自然语言处理 简称NLP 和Python挖掘维基百科Infobox等内容的知识 此篇文章主要参考书籍 Natural Language
  • 恶意URL数据集

    一些URL数据集的收集来源 1 https openphish com feed txt 2 https ransomwaretracker abuse ch blocklist 3 https www phishtank com 4 ht
  • SnackBar 简单使用

    1 简介 Snackbar是Android Support Design Library库中的一个控件 可以在屏幕底部快速弹出消息 比Toast更加好用 可以添加点击行为 多用于结合协调布局使用 CoordinatorLayout impl