android之自定义Toast使用方法

Android系统默认的Toast十分简洁,使用也非常的简单。但是有时我们的程序使用默认的Toast时会和程序的整体风格不搭配,这个时候我们就需要自定义Toast,使其与我们的程序更加融合。

使用自定义Toast,首先我们需要添加一个布局文件,该布局文件的结构和Activity使用的布局文件结构一致,在该布局文件中我们需设计我们Toast的布局,例如:

复制代码 代码如下:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/toast_layout_root"

android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:padding="10dp"

android:background="#DAAA"

>

<ImageView android:id="@+id/image"

android:layout_width="wrap_content"

android:layout_height="fill_parent"

android:layout_marginRight="10dp"

/>

<TextView android:id="@+id/text"

android:layout_width="wrap_content"

android:layout_height="fill_parent"

android:textColor="#FFF"

/>

</LinearLayout>

在这个地方要注意,我们给LinearLayout添加的id属性,在后面的代码中我们需要使用到。在程序中,我们可以通过如下代码创建我们自己的Toast:

复制代码 代码如下:

public class MainActivity extends Activity

{

private Button btn;

@Override

public void onCreate(Bundle savedInstanceState)

{

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

btn = (Button) findViewById(R.id.btn);

btn.setOnClickListener(new OnClickListener()

{

@Override

public void onClick(View v)

{

//获取LayoutInflater对象,该对象能把XML文件转换为与之一直的View对象

LayoutInflater inflater = getLayoutInflater();

//根据指定的布局文件创建一个具有层级关系的View对象

//第二个参数为View对象的根节点,即LinearLayout的ID

View layout = inflater.inflate(R.layout.toast_layout, (ViewGroup) findViewById(R.id.toast_layout_root));

//查找ImageView控件

//注意是在layout中查找

ImageView image = (ImageView) layout.findViewById(R.id.image);

image.setImageResource(R.drawable.head);

TextView text = (TextView) layout.findViewById(R.id.text);

text.setText("自定义Toast演示程序");

Toast toast = new Toast(getApplicationContext());

//设置Toast的位置

toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);

toast.setDuration(Toast.LENGTH_LONG);

//让Toast显示为我们自定义的样子

toast.setView(layout);

toast.show();

}

});

}

}

运行效果:

 

囧神的世界你不懂,虫哥的生活你没有,只有程序猿的世界大家才知道。程序猿们,为了自己的精彩世界奋斗吧,努力吧!加油……

时间: 2024-07-30 19:21:55

android之自定义Toast使用方法的相关文章

android之自定义Toast使用方法_Android

Android系统默认的Toast十分简洁,使用也非常的简单.但是有时我们的程序使用默认的Toast时会和程序的整体风格不搭配,这个时候我们就需要自定义Toast,使其与我们的程序更加融合. 使用自定义Toast,首先我们需要添加一个布局文件,该布局文件的结构和Activity使用的布局文件结构一致,在该布局文件中我们需设计我们Toast的布局,例如: 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> &

getview方法不执行- android listview自定义adapter,getview方法不显示

问题描述 android listview自定义adapter,getview方法不显示 adapter的getCount值不为0,但是不执行getview方法,在ErrorLog中打印出来的log在下面贴出来了,希望路过的大牛们帮忙看看 解决方案 问题找到了,是我的listView的布局控件不正确,已经改好了 解决方案二: android listView 重写Adapter方法getView的性能优化问题 解决方案三: 空指针异常,找找在哪个位置. 解决方案四: log和问的错没什么关系 解

Android使用自定义字体的方法

本文实例讲述了Android使用自定义字体的方法.分享给大家供大家参考,具体如下: 一.问题: 作为android初学者,在做一个游戏,游戏的标题我用的是TextView,android只提供斜体粗体,但把字体设置成楷体游戏的界面会更好,怎么才能实现. 二.解决方法: 使用自定义字体 android Typeface使用TTF字体文件设置字体 我们可以在程序中放入ttf字体文件,在程序中使用Typeface设置字体. 第一步,在assets目录下新建fonts目录,把ttf字体文件放到这. 第二

Android实现自定义标题栏的方法_Android

本文要讲自己定义一个标题栏,能加事件.然后可以移值到不同的手机上,基本上不用改什么,调用也很简单 在layout文件夹下,新建一个XML.名字叫做layout_title_bar.xml然后来看看布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

Android中使用Toast.cancel()方法优化toast内容显示的解决方法_Android

产品在测试过程中发现一个bug,就是测试人员不停的疯狂的点击某个按钮,触发了toast以后,toast内容会一直排着队的显示出来,不能很快的消失.这样可能会影响用户的使用. 看到Toast有一个cancel()方法: 复制代码 代码如下: void cancel() Close the view if it's showing, or don't show it if it isn't showing yet. 做程序员的,基本一看api就知道,用这个可以取消上一个toast的显示,然后显示下一

Android中使用Toast.cancel()方法优化toast内容显示的解决方法

产品在测试过程中发现一个bug,就是测试人员不停的疯狂的点击某个按钮,触发了toast以后,toast内容会一直排着队的显示出来,不能很快的消失.这样可能会影响用户的使用. 看到Toast有一个cancel()方法:复制代码 代码如下:void cancel() Close the view if it's showing, or don't show it if it isn't showing yet. 做程序员的,基本一看api就知道,用这个可以取消上一个toast的显示,然后显示下一个,

Android实现自定义标题栏的方法

本文要讲自己定义一个标题栏,能加事件.然后可以移值到不同的手机上,基本上不用改什么,调用也很简单 在layout文件夹下,新建一个XML.名字叫做layout_title_bar.xml然后来看看布局: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

Android自定义Toast提示框的显示效果实例

先看看效果图 Activity: package com.example.editortoast; import android.app.Activity; import android.os.Bundle; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import andro

Android实现自定义带文字和图片Button的方法

  本文实例讲述了Android实现自定义带文字和图片Button的方法.分享给大家供大家参考.具体分析如下: 在Android开发中经常会需要用到带文字和图片的button,下面来讲解一下常用的实现办法. 一.用系统自带的Button实现 最简单的一种办法就是利用系统自带的Button来实现,这种方式代码量最小.在Button的属性中有一个是drawableLeft,这个属性可以把图片设置在文字的左边,但是这种方式必须让icon的背景色是透明的,如果icon的背景色不是透明的话,会导致点击按钮