`

【转】消息模式Toast.makeText的几种常见用法

 
阅读更多

转载自:http://daikainan.iteye.com/blog/1405575

Toast 是一个 View 视图,快速的为用户显示少量的信息。 Toast 在应用程序上浮动显示信息给用户,它永远不会获得焦点,不影响用户的输入等操作,主要用于 一些帮助 / 提示。

Toast 最常见的创建方式是使用静态方法 Toast.makeText

我使用的是 SDK 2.2

1. 默认的显示方式




 

// 第一个参数:当前的上下文环境。可用getApplicationContext()或this 
// 第二个参数:要显示的字符串。也可是R.string中字符串ID 
 // 第三个参数:显示的时间长短。Toast默认的有两个LENGTH_LONG(长)和LENGTH_SHORT(短),也可以使用毫秒如2000ms 
Toast toast=Toast.makeText(getApplicationContext(), "默认的Toast", Toast.LENGTH_SHORT); 
//显示toast信息 
toast.show(); 

 2. 自定义显示位置


 

Toast toast=Toast.makeText(getApplicationContext(), "自定义显示位置的Toast", Toast.LENGTH_SHORT); 
//第一个参数:设置toast在屏幕中显示的位置。我现在的设置是居中靠顶 
//第二个参数:相对于第一个参数设置toast位置的横向X轴的偏移量,正数向右偏移,负数向左偏移 
//第三个参数:同的第二个参数道理一样 
//如果你设置的偏移量超过了屏幕的范围,toast将在屏幕内靠近超出的那个边界显示 
toast.setGravity(Gravity.TOP|Gravity.CENTER, -50, 100); 
//屏幕居中显示,X轴和Y轴偏移量都是0 
//toast.setGravity(Gravity.CENTER, 0, 0); 
toast.show();

 3. 带图片的



 

Toast toast=Toast.makeText(getApplicationContext(), "显示带图片的toast", 3000); 
toast.setGravity(Gravity.CENTER, 0, 0); 
//创建图片视图对象 
ImageView imageView= new ImageView(getApplicationContext()); 
//设置图片 
imageView.setImageResource(R.drawable.ic_launcher); 
//获得toast的布局 
LinearLayout toastView = (LinearLayout) toast.getView(); 
//设置此布局为横向的 
toastView.setOrientation(LinearLayout.HORIZONTAL); 
//将ImageView在加入到此布局中的第一个位置 
toastView.addView(imageView, 0); 
toast.show();

 4. 完全自定义显示方式



 

//Inflater意思是充气 
//LayoutInflater这个类用来实例化XML文件到其相应的视图对象的布局 
LayoutInflater inflater = getLayoutInflater(); 
//通过制定XML文件及布局ID来填充一个视图对象 
View layout = inflater.inflate(R.layout.custom2,(ViewGroup)findViewById(R.id.llToast)); 

ImageView image = (ImageView) layout.findViewById(R.id.tvImageToast); 
//设置布局中图片视图中图片 
image.setImageResource(R.drawable.ic_launcher); 

TextView title = (TextView) layout.findViewById(R.id.tvTitleToast); 
//设置标题 
title.setText("标题栏"); 

TextView text = (TextView) layout.findViewById(R.id.tvTextToast); 
//设置内容 
text.setText("完全自定义Toast"); 

Toast toast= new Toast(getApplicationContext()); 
toast.setGravity(Gravity.CENTER , 0, 0); 
toast.setDuration(Toast.LENGTH_LONG); 
toast.setView(layout); 
toast.show();

 5. 其他线程通过 Handler 的调用

 



 

//调用方法1 
//Thread th=new Thread(this); 
//th.start(); 
//调用方法2 
handler.post(new Runnable() { 
@Override 
public void run() { 
showToast(); 
} 
});

 

 

public void showToast(){ 
 Toast toast=Toast.makeText(getApplicationContext(), "Toast在其他线程中调用显示", Toast.LENGTH_SHORT); 
 toast.show(); 
 } 

 

Handler handler=new Handler(){ 
@Override 
public void handleMessage(Message msg) { 
int what=msg.what; 
switch (what) { 
case 1: 
showToast(); 
break; 
default: 
break; 
} 

super.handleMessage(msg); 
} 
};

 

@Override 
public void run() { 
handler.sendEmptyMessage(1); 
}

 

 

 

  • 大小: 32 KB
  • 大小: 32.5 KB
  • 大小: 33.3 KB
  • 大小: 30.2 KB
  • 大小: 30.5 KB
分享到:
评论

相关推荐

    toast几种用法

    本文将详细介绍`Toast`的几种常见用法,包括如何创建基本的`Toast`、自定义`Toast`的位置以及创建带有图片的`Toast`。 ### 基本的`Toast`使用 在Android中,`Toast`类提供了简单的API来创建和显示`Toast`。首先,...

    五种不同的Toast

    `Toast`的消息通常会在屏幕上显示几秒钟,然后自动消失。在给定的“五种不同的Toast”主题中,我们可以探讨不同类型的`Toast`展示方式及其用法。 1. **基本的Toast** 最基础的`Toast`创建方法是通过`Toast....

    各种Toast的设计Demo

    下面将详细介绍`Toast`的基本概念、使用方法,以及如何通过工具类优化`Toast`的使用。 ### 1. Toast基本概念 `Toast`是Android SDK中提供的一种轻量级通知方式,它会在屏幕的指定位置显示一段简短的文字信息,并在...

    常用的几种不同Toast源码

    本文将深入解析`Toast`的源码,帮助初学者理解其工作原理,并探讨几种不同类型的`Toast`用法。 首先,我们先来了解`Toast`的基本使用方法。在Android应用中,我们通常通过`Toast.makeText()`方法创建一个`Toast`...

    Android代码-五种效果的Toast.rar

    在`MyToast`类中,可能包括以下几种常见的自定义方式: 1. **改变文字样式**:可以通过设置自定义的`TextView`属性,如字体、颜色、大小等,来改变`Toast`中显示的文字样式。 2. **设置背景图片**:为`Toast`设置...

    五种不同的Toast效果.zip

    在Android开发中,`Toast`是一种常见的用户反馈机制,它能短暂地显示简短的信息,而不会中断用户的操作。在给定的资源“五种不同的Toast效果.zip”中,我们可以推测其中包含了至少五种不同样式的`Toast`实现,可能是...

    带图片的toast

    使用`LayoutInflater`加载布局,然后使用`Toast.makeText().view()`方法创建并显示自定义的Toast。 4. **手动取消Toast** 默认情况下,Toast会自动在指定的时间后消失。如果需要在用户特定操作后提前取消Toast,...

    自定义动画toast.zip

    默认的Toast简单易用,通过`Toast.makeText()`方法创建,并通过`show()`方法展示。但是,它提供的样式和动画有限,只能在屏幕中央或底部短暂显示文本信息。 要实现自定义动画Toast,我们需要做以下几步: 1. 创建...

    安卓开发-自定义彩色Toast.zip

    在Android中,我们可以使用`Toast.makeText()`方法来创建一个简单的Toast,传入上下文、消息文本和持续时间(短时或长时)。 2. **自定义View**:要改变Toast的样式,我们需创建一个自定义的布局文件,定义所需的...

    自定义Toast及解决重复出现Toast的问题

    2. **创建自定义Toast类**:创建一个新的Java类,继承自`Toast`,并覆盖`makeText()`方法,以使用我们刚才创建的布局。 ```java public class CustomToast extends Toast { public CustomToast(Context context) { ...

    Android-AndroidToast工具类

    在Android应用开发中,`AndroidToast`工具类是一种常见的组件,用于向用户显示短暂的通知信息。这些信息通常出现在屏幕上的某个位置,展示几秒钟后自动消失,不会干扰用户的正常操作。`AndroidToast`的使用非常方便...

    自定义彩色Toast.zip

    通过`makeText()`方法创建一个Toast对象,并通过`show()`方法将其显示在屏幕上。默认情况下,Toast会以半透明背景和系统默认字体颜色展示信息。 2. **自定义布局**:要实现彩色Toast,首先需要创建一个自定义的XML...

    toast 使用

    2. 创建`Toast`对象:使用`Toast.makeText()`方法创建`Toast`实例。 ```java Toast toast = Toast.makeText(context, "这是个简单的Toast消息", Toast.LENGTH_SHORT); ``` 这里的第二个参数是你要显示的文本,第三...

    Toast 图片提示框

    1. Toast的基本概念:Toast是Android系统提供的一种轻量级提示组件,它可以在屏幕上的任意位置短暂显示一条消息,然后自动消失,不会干扰用户与当前界面的交互。 2. 创建Toast:开发者通常通过`Toast.makeText()`...

    android 解决Toast重复显示问题

    1. **单例模式**:使用单例模式确保在整个应用中只有一个`Toast`实例。这样可以避免重复创建,从而防止重复显示。示例如下: ```java public class SingletonToast { private static SingletonToast instance; ...

    Toast使用

    1. **创建Toast**: 使用`Toast.makeText()`方法创建一个`Toast`对象,需要传入上下文(Context)、显示的消息文本(CharSequence)和持续时间(LENGTH_SHORT或LENGTH_LONG)。 ```java Toast toast = Toast....

    android Toast大全(五种情形 && 字体颜色)

    在Android开发中,`Toast` 是一种非常常用的组件,它能快速、简洁地向用户展示一些简短的信息,比如提示或者警告,而不会中断用户的操作。`Toast` 的出现时间短暂,一般会在几秒钟后自动消失。在Android应用中,我们...

    Android-自定义Toast解决系统Toast存在的问题

    在Android应用开发中,Toast是一种常用的轻量级提示方式,用于短暂显示消息,告知用户一些信息或者操作结果。然而,系统默认的Toast虽然方便,但其样式和功能相对固定,不能满足所有开发者的需求。在某些情况下,...

    Android应用源码之五种不同的Toast效果.zip

    在“MyToast”这个源码文件中,可能会包含以下几种`Toast`效果: - **不同位置的Toast**:例如,除了默认的底部和顶部,还可以设置在屏幕中央或者自定义的坐标位置。 - **不同样式的Toast**:可能有不同的背景...

Global site tag (gtag.js) - Google Analytics