前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >自定义Toast样式,位置

自定义Toast样式,位置

作者头像
fanfan
发布2022-05-07 13:40:52
8040
发布2022-05-07 13:40:52
举报
文章被收录于专栏:编程思想之路

Android自带的Toast效果实在是不敢恭维,没办法,自己动手丰衣足食,想定义什么样的就定义什么样的,有技术就是任性,接下来自定义Toast步骤:

1,新建Toast对象:

代码语言:javascript
复制
         //获取toast对象
            Toast toast = new Toast(mContext);

2,利用layoutInflater获取view

代码语言:javascript
复制
//利用inflate方法获取到view
            View view = LayoutInflater.from(mContext).inflate(R.layout.layout_toast,null);

3,设置toast的布局:

代码语言:javascript
复制
//设置toast的布局
            toast.setView(view);

4,设置toast的显示时间:

代码语言:javascript
复制
//设置toast的显示时间LENGTH_LONG或者LENGTH_SHORT
            toast.setDuration(Toast.LENGTH_LONG);

5,呈现出toast:

代码语言:javascript
复制
//展示toast
            toast.show();

至此,toast自定义结束,让大家看一看效果图:

在第2步时我进行控件的绑定以及操作,实现toast布局中控件的动态改变,代码如下:

代码语言:javascript
复制
//获取activity中输入框的内容
            String mBtnStr = mEditBtn.getText().toString().trim();
            String mContentStr = mEditContent.getText().toString().trim();
代码语言:javascript
复制
//绑定控件,并填充内容
            mToastBtn = (Button) view.findViewById(R.id.btn);
            mToastContent = (TextView) view.findViewById(R.id.tv);
            mToastSeekBar = (SeekBar) view.findViewById(R.id.seekBar);
            mToastSeekBar.setMax(1000);
            mToastSeekBar.setProgress(40);
//若获取到的内容为空,则显示默认的textview或者button</span>
            mToastContent.setText(mContentStr.isEmpty() ? "textView" : mContentStr);
            mToastBtn.setText(mBtnStr.isEmpty() ? "button" : mBtnStr);

更改toast中textview和button值的效果图如下:

在呈现toast之前,可以去设置toast的位置:

调用 的方法是:

代码语言:javascript
复制
setGravity(int gravity, int xOffset, int yOffset)
代码语言:javascript
复制
//自定义toast弹出位置,<span style="font-family:KaiTi_GB2312;">现在处于手机屏幕中央</span>
            toast.setGravity(0,0,0);

效果图如上图

代码语言:javascript
复制
//自定义toast弹出位置,x轴方向上偏移200
            toast.setGravity(0,200,0);

效果图如下

代码语言:javascript
复制
//自定义toast弹出位置,x轴方向上偏移100
            toast.setGravity(0,100,0);

效果图如下,对比两个图就可以发现偏移量是从gravity 的位置开始算起,y轴上方偏移量类似,不再赘述

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-12-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档