`
nanjingjiangbiao_T
  • 浏览: 2739624 次
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Android--强大的Toast实现多种效果

 
阅读更多

我们常常会使用Toast作为提醒的一种方式,可是,Toast不仅能实现最普通的提醒,还能实现很多种自己定制的效果。

1.默认效果

代码

Toast.makeText(getApplicationContext(), "默认Toast样式",
Toast.LENGTH_SHORT).show();

2.自定义显示位置效果

代码

toast = Toast.makeText(getApplicationContext(),
"自定义位置Toast", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();

3.带图片效果

代码

toast = Toast.makeText(getApplicationContext(),
"带图片的Toast", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
LinearLayout toastView = (LinearLayout) toast.getView();
ImageView imageCodeProject = new ImageView(getApplicationContext());
imageCodeProject.setImageResource(R.drawable.icon);
toastView.addView(imageCodeProject, 0);
toast.show();

4.完全自定义效果

代码

LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.custom,
(ViewGroup) findViewById(R.id.llToast));
ImageView image = (ImageView) layout
.findViewById(R.id.tvImageToast);
image.setImageResource(R.drawable.icon);
TextView title = (TextView) layout.findViewById(R.id.tvTitleToast);
title.setText("Attention");
TextView text = (TextView) layout.findViewById(R.id.tvTextToast);
text.setText("完全自定义Toast");
toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.RIGHT | Gravity.TOP, 12, 40);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();

5.其他线程

代码

new Thread(new Runnable() {
public void run() {
showToast();
}
}).start();

下面,给出一个具体的实例,实现带图标的Toast的。

实现的代码非常简单,如下:

public class EX05_07 extends Activity 
{ 
  private Button mButton01; 
  /** Called when the activity is first created. */ 
  @Override 
  public void onCreate(Bundle savedInstanceState) 
  {
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main);
    mButton01 = (Button)findViewById(R.id.myButton1); 
    /*设定Button用OnClickListener启动事件*/
    mButton01.setOnClickListener(new Button.OnClickListener()
    { 
      @Override public void onClick(View v) 
      {
        // TODO Auto-generated method stub 
        ImageView mView01 = new ImageView(EX05_07.this); 
        TextView mTextView = new TextView(EX05_07.this);
        LinearLayout lay = new LinearLayout(EX05_07.this);
        /*设定mTextView去抓取string值*/ 
        mTextView.setText(R.string.app_url); 
        /*判断mTextView的内容为何,并与系统做链接*/
        Linkify.addLinks(mTextView,Linkify.WEB_URLS| Linkify.EMAIL_ADDRESSES|Linkify.PHONE_NUMBERS); 
        /*用Toast方式显示*/ 
        Toast toast = Toast.makeText(EX05_07.this, mTextView .getText(), Toast.LENGTH_LONG); 
        
        View textView = toast.getView(); 
        lay.setOrientation(LinearLayout.HORIZONTAL);
        /*在Toast里加上图片*/
        mView01.setImageResource(R.drawable.icon); 
        /*在Toast里显示图片*/ lay.addView(mView01); 
        /*在Toast里显示文字*/ lay.addView(textView); 
        toast.setView(lay);
        toast.show(); 
        } 
      });
    } 
  }


分享到:
评论

相关推荐

    Android-对标准AndroidToast进行美化的一个库

    2. **动画效果**:除了基本的显示和消失动画外,库还提供了多种进出场动画,如渐入渐出、滑动等,使`Toast`的出现更加生动有趣,提升用户交互体验。 3. **图标支持**:在`Toast`中加入图标是一种常见的设计手法,...

    Android-FancyToast-Android生成花式AndroidToast的库

    这个库不仅提供了多种预设的样式,还允许开发者通过代码自定义`Toast`的外观,包括背景颜色、文字颜色、字体大小、动画效果等。 使用`FancyToast-Android`库,开发者可以实现以下功能: 1. **样式选择**:库内预设...

    Android高级应用源码-五种不同的Toast效果.zip

    这个"Android高级应用源码-五种不同的Toast效果.zip"压缩包提供了一些示例,展示了如何在Android应用中创建和自定义多种Toast效果。下面我们将详细探讨这些知识点: 1. **基础Toast使用**: - Android SDK提供了一...

    Android-简洁优雅可点击的toast控件仿手机百度9.0无BadTokenException风险

    总的来说,这个项目提供了一个强大且易用的工具,帮助开发者克服标准`Toast`的局限性,打造更美观、安全和功能丰富的Android应用。通过使用这样的自定义控件,开发者可以专注于应用的核心功能,而不必过于担忧与`...

    android 带颜色的Toast效果+Toast位置设置

    下面将详细讲解如何实现`Android`中的带颜色的`Toast`效果以及设置`Toast`的位置。 首先,我们创建一个自定义`Toast`的方法。这个方法会接收两个参数:`Context`(用于获取资源和创建`View`)和`String`消息(要...

    Android-Toast通知polyfill

    在Android应用开发中,"Toast通知polyfill"是一种技术手段,用于在不支持原生Toast功能的环境中模拟或增强Toast的显示效果。Toast是Android系统提供的一种轻量级的反馈机制,它会在屏幕上的某个位置短暂显示一条消息...

    Android高级应用源码-五种效果的Toast.zip

    在“Android高级应用源码-五种效果的Toast.zip”这个压缩包中,我们可以推测它包含了一个名为“MyToast”的源码示例,展示了如何自定义多种样式的Toast效果。这里我们将详细探讨如何在Android中实现不同类型的Toast...

    Android中实现带声音提示的Toast (自定义扩展Toast)

    在Android开发中,常规的`Toast`用于短暂地显示一些简短的信息,但不支持声音提示。为了在用户界面交互时增加声音反馈,我们需要自定义一个扩展版的`Toast`,使其不仅显示文本,还能播放预设的声音。下面将详细介绍...

    Android-EasyBanner超简单的轮播图

    总之,Android-EasyBanner凭借其简洁的API和强大的定制能力,为Android开发者提供了一种高效且灵活的轮播图解决方案。无论你是新手还是资深开发者,都可以快速上手,轻松应对各种轮播图场景。在实际开发中,结合标签...

    Android-Toasty提供多种风格的主题普通吐司

    在提供的压缩包文件GrenderG-Toasty-600b630中,包含了Toasty库的源码和示例项目,开发者可以通过查看源码了解其实现原理,或者直接运行示例来体验不同主题的效果,进一步熟悉和掌握这个工具的使用。

    Android-PopoverView-一个模仿iOSUIPopoverController效果的控件

    PopoverView是Android平台上的一个自定义控件,它旨在实现类似iOS中的UIPopoverController的效果。在iOS中,UIPopoverController用于展示一个大型视图,通常用作其他小视图的操作选择器,它会以一种优雅的方式从指定...

    Android应用源码之五种效果的Toast-IT计算机-毕业设计.zip

    在这个名为“Android应用源码之五种效果的Toast”的项目中,开发者可能探索了如何自定义和扩展`Toast`以实现多种不同的展示效果。以下是对这个毕业设计主题的详细解析: 1. **基本的Toast使用**:`Toast`在Android...

    Android应用源码之自定义彩色Toast-IT计算机-毕业设计.zip

    - 为了确保在不同设备和Android版本上的兼容性,需要测试在多种屏幕尺寸和Android版本上运行的效果。 - 保持简洁,避免过度设计。自定义Toast虽然能增加视觉效果,但应避免干扰用户对主要内容的注意力。 在毕业...

    Android-CoolToast一个模仿酷安8.0的吐司高度定制

    在Android应用开发中,UI设计和用户体验是至关重要的部分,其中吐司(Toast)作为一种轻量级的提示方式,常用于向用户展示短暂的通知信息。`Android-CoolToast`项目正是针对这一需求,提供了一个高度定制化的解决...

    Toast的多种样式(附带Notification)

    本文将深入探讨`Toast`的多种样式及其与`Notification`的区别。 首先,我们来了解`Toast`的基本用法。`Toast`通常用于显示轻量级的提示信息,它会在屏幕上的某个位置短暂显示后自动消失。创建一个简单的`Toast`可以...

    FlutterToast,flutter的android toast插件.zip

    FlutterToast是针对Flutter框架开发的一款插件,专用于在Android和iOS平台上实现类似原生Toast的功能。这个开源项目为开发者提供了便捷的方式,在跨平台的Flutter应用中显示短暂的通知消息,无需深入理解每个平台的...

    Android弹窗ToastDemo源码

    - 自定义`Toast`可能导致与其他系统组件的兼容性问题,因此在设计时需考虑多种设备和Android版本。 - `Toast`是异步的,它不会阻塞主线程,所以不要在`Toast`中执行耗时操作。 - 为了避免内存泄漏,确保在...

    安卓Dialog对话框相关-五种不同的Toast.zip

    至于`fivetoast`,这可能是包含五种不同Toast实现的Java类文件或者目录。 通过研究这些源码,开发者可以学习如何在实际项目中灵活运用Dialog和Toast,比如如何创建自定义的Dialog,怎样在不同场景下选择适合的...

    Toast提示框

    描述中提到的“分享Toast提示框,方便集成,样式多样化”,意味着这是一个开源项目,提供了多种样式的Toast实现,方便开发者快速将其集成到自己的应用中。这通常涉及到自定义布局、动画效果以及不同类型的提示风格,...

    Android自定义多种吐司效果

    总结,通过自定义`Toast`类和创建`ToastUtil`工具类,我们可以轻松实现Android中的各种自定义吐司效果,包括居中带图片的吐司以及在屏幕不同位置显示的吐司。这不仅提升了用户体验,也为代码维护提供了便利。在实际...

Global site tag (gtag.js) - Google Analytics