什么是Toast
1. Toast是一种提供给用户简洁提示信息的视图。
2. 该视图以悬浮于应用程序之上的形式呈现给用户。Toast提示界面不获取焦点,所以不影响用户的操作。Toast提示就是在不影响用户使用程序的同时,给用户提供某些提示信息。
3. Android提供的Toast类可以创建和显示该Toast信息。Toast常用方法
Toast.makeText(context,text,duration);  // 返回值为Toast
toast.setDuration(duration);  // 设置持续时间
toast.setGravity(gravity,xOffset,yOffset);  // 设置toast位置
toast.setText(s);  // 设置提示内容
toast.show();  // 显示
toast.setGravity(gravity,x0ffset,y0ffset);
gravity: 通过 Gravity.xxxx 选择位置,注意 Gravity 不要漏掉
x0ffset: 相对当前位置的X轴(横向)的偏移量
y0ffset: 相对当前位置的Y轴(纵向)的偏移量
 1 public class MainActivity extends ActionBarActivity {
 2
 3     @Override
 4     protected void onCreate(Bundle savedInstanceState) {
 5         super.onCreate(savedInstanceState);
 6         setContentView(R.layout.fragment_main);
 7         initEvent();
 8
 9     }
10
11     // 初始化点击事件
12     private void initEvent() {
13         // TODO Auto-generated method stub
14         findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
15
16             @Override
17             public void onClick(View v) {
18                 // TODO Auto-generated method stub
19                 showToast1();
20             }
21         });
22     }
23
24     // 显示默认toast
25     private void showToast1() {
26         // Toast toast=Toast.makeText(this,
27         // R.string.app_name,Toast.LENGTH_LONG);
28         Toast toast = Toast.makeText(this, "默认的Toast", Toast.LENGTH_LONG);
29         toast.show();
30     }
31
32     // 显示自定义位置的Toast
33     private void showToast2() {
34         // Toast toast=Toast.makeText(this,
35         // R.string.app_name,Toast.LENGTH_LONG);
36         Toast toast = Toast.makeText(this, "改变位置的Toast", Toast.LENGTH_LONG);
37         // toast.setGravity(gravity,x0ffset,y0ffset);
38         // gravity: 通过 Gravity.xxxx 选择位置,注意 Gravity 不要漏掉
39         // x0ffset: 相对当前位置的X轴(横向)的偏移量(负向左正向右),
40         // y0ffset: 相对当前位置的Y轴(纵向)的偏移量(负向上正向下)
41         toast.setGravity(Gravity.CENTER, 0, 0);
42
43         toast.show();
44     }
45
46     // 显示带有图片的Toast
47     private void showToast3() {
48         // Toast toast=Toast.makeText(this,
49         // R.string.app_name,Toast.LENGTH_LONG);
50         Toast toast = Toast.makeText(this, "带有图片的Toast", Toast.LENGTH_LONG);
51         LinearLayout toastLayout = (LinearLayout) toast.getView();
52         ImageView imageView = new ImageView(this);
53         imageView.setImageResource(R.drawable.ic_launcher);
54
55         toastLayout.addView(imageView, 0);// 图片在文字上方
56         toast.show();
57     }
58
59     // 自定义的toast
60     private void showToast4() {
61         // Toast toast=Toast.makeText(this,
62         // R.string.app_name,Toast.LENGTH_LONG);
63         LayoutInflater inflater = LayoutInflater.from(this);
64         View toastView = inflater.inflate(R.layout.toast, null);
65         Toast toast = new Toast(this);
66         toast.setView(toastView);
67         toast.show();
68     }
69 }

自定义Toast的代码。注意这里是setView(),而不是addView()。
另外在 R.layout.toast_layout 里面是我们自定义的 Toast 布局。本例中是一个ImageView,在其上下各有一个TextView。

转载于:https://www.cnblogs.com/my334420/p/6784893.html

Android攻城狮重新认识Toast相关推荐

  1. 写给即将/正在找工作的Android攻城狮

    写给即将/正在找工作的Android攻城狮 版权声明:转载必须注明本文转自严振杰的博客:http://blog.yanzhenjie.com 这段时间从北上广深杭不断传来一两个月找不到工作的消息,我一 ...

  2. Android攻城狮ListView

    适配器: 数据适配器:把复杂的数据填充在指定的视图界面上ArrayAdapter 数组适配器 用于绑定格式单一的数据 数据源:可以是集合或数组 SimpleAdapter 简单适配器:用于绑定格式复杂 ...

  3. Android攻城狮GestureDetector和GestureOverlayView

    手势识别 可以通过以下两种方式实现: 1. 使用GestureDetector 2. 使用GestureOverlayView(属于线程的控件)手势交互过程(原理): 1. 触屏一刹那,触发 Moti ...

  4. Android攻城狮fragment

    1 //1,fragment静态加载:MainActivity MainActivty1_2 Myfragment1 2 //2,fragment动态加载 :MainActivity Myfragme ...

  5. Android攻城狮数据存储之SharedPreferences

    Android的四种数据存储方式: 1. SharedPreferences 2. SQLite 3. Content Provider 4. File --------------------- S ...

  6. Android攻城狮认识ContextMenu

    什么是ContextMenu? 例如Windows系统的右键菜单,在Android中长按某个文件夹,会跳出菜单,这个菜单就是ContextMenu. ContextMenu与OptionMenu的区别 ...

  7. Android攻城狮OptionsMenu

    Android的菜单一共有三种: OptionsMenu 选择菜单 ContextMenu 上下文菜单 SubMenu 子菜单创建选项菜单: 在 Activity 里面重写 onCreateOptio ...

  8. Android攻城狮Handler简介

    Handler是什么? Handler是Android提供的一套用来更新UI的机制,也是一套消息处理机制,可以通过它发送消息,也可以通过它处理消息. 所有Activity生命周期回调的方法(例如onC ...

  9. Android攻城狮 progressBarprogressDialog

    ProgressBar的关键属性 android:max="100" --最大显示进度 android:progress="50" --第一显示进度 andro ...

最新文章

  1. 比较v-bind和v-model
  2. 软件系统的4大技术本质
  3. Latex常用数学符号
  4. android 自定义皮肤,Android Studio 自定义皮肤主题和背景
  5. (笔试题)程序运行时间
  6. 3、leetcode 697 数组的度
  7. boost::type_erasure::typeid_of相关的测试程序
  8. 简单异常处理器SimpleMappingExceptionResolver
  9. CREATE (/IWBEP/CL_MGW_EXPAND_TREE)
  10. ef mysql 外键 一对一_EFCore-一对一配置外键小记2
  11. 华为手机获取状态栏高度是错误的_你的华为手机状态栏有HD图标吗?这又代表着什么?看完你就懂了...
  12. Matplotlib画图教程:在QT界面中嵌入三维图片
  13. foxmail 7.2密码查看工具_MacOS装机必备:Archiver 3 for Mac解压缩工具
  14. ArcMap坐标系转换
  15. 首席CEO乔布斯他是如何拉住了苹果快破产的边缘?他的运营方法是什么呢?
  16. r4900g3系统安装linux_H3C UniServer R4900 G3
  17. macOS连接ftp服务器
  18. Android Widget 小部件(一) 简单实现
  19. 《决战大数据》读书笔记(一) 收集数据和使用数据要有关联
  20. 计算机9网络连接不上,本地连接连不上,教您电脑本地连接连不上怎么解决

热门文章

  1. 最后1天!生信入门转录组和可视化学习捷径
  2. spa项目开发之vue+elementUi实现tab页
  3. linux u盘版下载官网,Linux助手:Universal USB Installer新版下载
  4. 【致青春】奋斗迷茫的我们
  5. 【知识兔Excel教程】7个Excel序号填充的经典案例,照搬这些公式,效率倍增
  6. 张朝阳喊话俞敏洪:为什么还不退休?
  7. 5-2. 已有的小车实现samba文件共享
  8. esxi导出ovf报错
  9. Micropython教程之TPYBoard DIY电子时钟(萝卜学科编程教育)
  10. Keil5 点击Debug Setting 软件崩溃解决方法