SnackBar 笔记(二)样式美化
来源:互联网 发布:简述网络整合营销理论 编辑:程序博客网 时间:2024/05/17 01:18
不会使用snackbar去这里http://blog.csdn.net/sdjianfei/article/details/51583023
</pre>note:对是snackbar的样式、左右侧textview的字体、颜色等进行自定义,给左侧textview加上了监听 点击可进行dismiss;<p></p><p> ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓好了 上硬菜,准备好刀叉与卫生纸。↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓</p><p>首先做一个snackbar圆角的selector 或者shape</p><p></p><pre code_snippet_id="1709614" snippet_file_name="blog_20160606_2_1696911" name="code" class="html"><?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape> <!--圆角--> <corners android:radius="4dp" /> <solid android:color="#cc1A71E5" /> </shape> </item></selector>以下是定义在Baseactivity中的方法
public Snackbar getSnackbar(TextView v, String leftStr, String rightStr) { snackbar = Snackbar.make(v, leftStr, Snackbar.LENGTH_LONG).setAction(rightStr, new View.OnClickListener() { @Override public void onClick(View v) {// 此处根据需要设置监听 } }); Snackbar.SnackbarLayout snacklayout = (Snackbar.SnackbarLayout) snackbar.getView();//snackd布局// snack背景// snacklayout.setAlpha(0.3f);//包括了文本的透明度!323532 snacklayout.setBackgroundResource(R.drawable.sel_snack);// 右侧文本(监听可在外部设置) TextView lefttv = (TextView) snacklayout.findViewById(R.id.snackbar_text); TextView actiontv = (TextView) snacklayout.findViewById(R.id.snackbar_action); actiontv.setTextColor(Color.parseColor("#FF8040")); lefttv.setTextColor(Color.parseColor("#FF8040"));// 左侧文本 lefttv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 此处根据需要设置监听 snackbar.dismiss(); } });// 设置snackbar在界面中的布局 ViewGroup.LayoutParams params = snacklayout.getLayoutParams(); LinearLayout.LayoutParams ll = new LinearLayout.LayoutParams(params.width, params.height); ll.setMargins(3, 0, 3, 0); ll.gravity = Gravity.TOP; snacklayout.setLayoutParams(ll); return snackbar; }再BaseActivity的子类中调用
snackbar1 = getSnackbar(tv, "左侧文本", "右侧文本"); snackbar1.show();
就是这样;
各位司机还可对我的方法进行修改,修改为适应自己的app风格的snackbar,我对snackbar布局的了解就是两个textview源码xml如下
<?xml version="1.0" encoding="utf-8"?><!-- ~ Copyright (C) 2015 The Android Open Source Project ~ ~ Licensed under the Apache License, Version 2.0 (the "License"); ~ you may not use this file except in compliance with the License. ~ You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0 ~ ~ Unless required by applicable law or agreed to in writing, software ~ distributed under the License is distributed on an "AS IS" BASIS, ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ~ See the License for the specific language governing permissions and ~ limitations under the License.--><merge xmlns:android="http://schemas.android.com/apk/res/android"> <TextView android:id="@+id/snackbar_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:paddingTop="@dimen/snackbar_padding_vertical" android:paddingBottom="@dimen/snackbar_padding_vertical" android:paddingLeft="@dimen/snackbar_padding_horizontal" android:paddingRight="@dimen/snackbar_padding_horizontal" android:textAppearance="@style/TextAppearance.Design.Snackbar.Message" android:maxLines="@integer/snackbar_text_max_lines" android:layout_gravity="center_vertical|left|start" android:ellipsize="end"/> <TextView android:id="@+id/snackbar_action" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/snackbar_extra_spacing_horizontal" android:layout_marginStart="@dimen/snackbar_extra_spacing_horizontal" android:layout_gravity="center_vertical|right|end" android:background="?attr/selectableItemBackground" android:paddingTop="@dimen/snackbar_padding_vertical" android:paddingBottom="@dimen/snackbar_padding_vertical" android:paddingLeft="@dimen/snackbar_padding_horizontal" android:paddingRight="@dimen/snackbar_padding_horizontal" android:visibility="gone" android:textAppearance="@style/TextAppearance.Design.Snackbar.Action"/></merge><!-- From: file:/usr/local/google/buildbot/repo_clients/https___googleplex-android.googlesource.com_a_platform_manifest.git/lmp-mr1-supportlib-release/frameworks/support/design/res/layout/layout_snackbar_include.xml -->
说白了就是对两个textview进行修改 改成自己喜欢的样式;
突兀的结束了。
2 0
- SnackBar 笔记(二)样式美化
- Snackbar样式
- Android开发笔记(一百二十七)活用提示窗Toast和Snackbar
- Android design library(二)----------FloatingActionButton + Snackbar
- android material design之Snackbar(二)
- SnackBar的样式使用(改变颜色以及设置action)
- SnackBar 笔记(一)基本使用
- SnackBar 笔记(三)错误及问题
- 精通样式表技术笔记(二)
- HTML学习笔记(二)样式
- TextView局部文字样式美化(SpannableStringBuilder)
- 浏览器页面滚动条美化(样式)
- Android 美化文件夹(二)
- 表单样式美化(1)-----输入框Text,密码框Password,文本域Textarea样式美化
- Material Design整理(二)——SnackBar
- Snackbar和toast以及snackbar的样式自定义
- 美化博客样式
- 单选框、多选框样式美化
- ModBuS协议校验码问题
- [转]高效Hash构建方法
- Spring Boot使用Redis进行消息的发布订阅
- 深入浅出动态代理
- 初学android插件化开发小记
- SnackBar 笔记(二)样式美化
- ios界面开发之UIControl事件
- 一些Objective-C的编码规范
- Android广告平台
- 【刷题之路】零钱凑整问题
- 程序员常用软件清单曝光
- 考研经验总结
- iOS添加测试设备与调试
- 连通图中节点的遍历