toast可以设置自定义的view和显示位置。下面是一个简单的例子,复杂些的就是改变其布局文件就可以了。

/**
* @author BMR
* @ClassName: ToastWithTwoText
* @Description: TODO:
* @date 2015/12/22 14:24
*/
public class ToastWithTwoText {
private static ToastWithTwoText toastWithTwoText; private Toast toast;
private Context mContext; private ToastWithTwoText(Context context) {
this.mContext = context;
} public static ToastWithTwoText createToastConfig(Context context) {
if (toastWithTwoText == null) {
toastWithTwoText = new ToastWithTwoText(context);
}
return toastWithTwoText;
} /**
* 显示Toast
*
* @param tvStrOne
* @param tvStrTwo
*/ public void ToastShow(String tvStrOne, String tvStrTwo) {
View layout = LayoutInflater.from(mContext).inflate(R.layout.layout_toast_with_two_text, null);
TextView tvOne = (TextView) layout.findViewById(R.id.tv_text_one);
TextView tvTwo = (TextView) layout.findViewById(R.id.tv_text_two);
tvOne.setText(tvStrOne);
tvTwo.setText(tvStrTwo);
toast = new Toast(mContext);
toast.setGravity(Gravity.CENTER | Gravity.CENTER_VERTICAL, 0, 0);
toast.setDuration(Toast.LENGTH_SHORT);
toast.setView(layout);
toast.show();
} public void ToastShow(int idStrOne, int idStrTwo) {
ToastShow(mContext.getString(idStrOne), mContext.getString(idStrTwo));
} }

布局文件代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:paddingLeft="@dimen/common_16"
android:paddingRight="@dimen/common_16"
android:background="@drawable/bg_circle_cornor_rect"
android:orientation="vertical"> <TextView
android:id="@+id/tv_text_one"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="@dimen/common_16"
android:gravity="center"
android:textColor="@color/trans_white2"
android:textSize="16dp"/> <TextView
android:id="@+id/tv_text_two"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/common_16"
android:gravity="center"
android:textColor="@color/trans_white2"
android:textSize="16dp"/> </LinearLayout>

圆角背景

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/trans_black_87" />
<corners android:topLeftRadius="8dp"
android:topRightRadius="8dp"
android:bottomRightRadius="8dp"
android:bottomLeftRadius="8dp"/>
</shape>

资源字段

<color name="trans_black_87">#DD000000</color> <!-- 87% trans -->
<color name="trans_white2">#ccffffff</color>
<dimen name="common_16">16dp</dimen>

自定义Toast样式-两行文本居中显示的更多相关文章

  1. 重写TextView,实现圆形背景,文本居中显示

    最近,在做考试试题排版,产品提出题号希望显示成圆形背景,序号文本居中显示. (有点问题:文本没有绝对居中,暂时没做处理.) 为此,我采取的方式是重写TextView的onDraw方法,绘制一个圆形背景 ...

  2. CSS文本居中显示

    因为一直为元素居中问题而困扰,所以决定把自己遇到和看到的方法记录下来,以便以后查看 如果要让inline或inline-block元素居中显示,则父元素css中包含text-align:center; ...

  3. flex的Accordion组件头部文本居中显示

    flex的Accordion组件头部文本默认是居左的,可以通过设置headerStyleName属性使之居中,另外还可以设置字体的样式等 <?xml version="1.0" ...

  4. ExtJS -- Grid 文本居中显示

    Reference: http://stackoverflow.com/questions/6561120/extjs-4-apply-defaults-to-all-columns-in-a-gri ...

  5. LabelControl文本居中显示

    https://www.devexpress.com/Support/Center/Question/Details/Q94915 If you set the AutoSizeMode to Non ...

  6. css 单行文本居中显示,多行文本左对齐

    父级元素 text-align:center; 自级元素 text-align:left; display:inline-block;

  7. ToastUtil【简单的Toast封装类】【未自定义Toast的显示风格】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 一个简单的Toast封装类. 效果图 API = 6.0 API = 4.4.2 代码分析 实现了不管我们触发多少次Toast调用, ...

  8. ToastCustomUtil【简单的Toast封装类】【自定义Toast的显示风格】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 ToastUtil + ToastCustom结合.主要解决低版本机型上系统toast显示不好看的问题. 效果图 代码分析 在Toa ...

  9. 自定义Toast的显示位置和显示内容

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

随机推荐

  1. nyoj 1238 最少换乘(dijkstra)

    描述 欧洲某城是一个著名的旅游胜地,每年都有成千上万的人前来观光旅行.Dr. Kong决定利用暑假好好游览一番.. 年轻人旅游不怕辛苦,不怕劳累,只要费用低就行.但Dr. Kong年过半百,他希望乘坐 ...

  2. hdu 5199 Gunner(STL之map,水)

    Problem Description Long long ago, there is a gunner whose name is Jack. He likes to go hunting very ...

  3. C#基础:异步调用 【转】

    首先来看一个简单的例子: 小明在烧水,等水烧开以后,将开水灌入热水瓶,然后开始整理家务 小文在烧水,在烧水的过程中整理家务,等水烧开以后,放下手中的家务活,将开水灌入热水瓶,然后继续整理家务 这也是日 ...

  4. VB读写Excel

        近期用excel和VB比較多,就简单的学习了一下VB中对Excel的处理.今天就介绍一些吧.       在VB中要想调用Excel,须要打开VB编程环境“project”菜单中的“引用”项目 ...

  5. 【拆点费用流】【HDU1853】【 Cyclic Tour】

    题意: 有N个城市,M条单向路,Tom想环游全部城市,每次至少环游2个城市,每个城市只能被环游一次.由于每条单向路都有长度,要求游遍全部城市的最小长度. // 给定一个有向图,必须用若干个环来覆盖整个 ...

  6. javascript模式——Facade

    Facade模式为许多代码提供一个方便的接口,不现实代码实现的复杂性,这样,使用者只需要关心他的使用接口就可以使用. 下面来看一段Facade模式的运用,绑定事件在浏览器之间是不一样的,利用Facad ...

  7. js 正则表达式验证 整理

    1.验证首字符是英文字母: var str="123"; var reg=/^[a-zA-Z]/; if(!reg.test(str)){ alert(str+"应以字母 ...

  8. Oracle 物理DG切换

    在进行DATA GUARD的物理STANDBY切换前需要注意:确认主库和从库间网络连接通畅:确认没有活动的会话连接在数据库中:PRIMARY数据库处于打开的状态,STANDBY数据库处于MOUNT状态 ...

  9. Java的常见误区与细节

    网上转来的 昨天整整一天,我都都呆在图书里.本打算找一些书学习“正则表达式”,很失望,没找到有这部分的内容的书.发现了一本<Java深入解析>,其中涉及了很多平时没有注意的一些误区,也许开 ...

  10. Redis的安装和配置

    在网站redis.io复制下载链接 wget http://download.redis.io/releases/redis-3.0.5.tar.gz tar zxvf redis-3.0.5.tar ...