Toast解析

课程Demo
public class MainActivity extends AppCompatActivity {
private Button bt1;
private Button bt2;
private Button bt3;
private Button bt4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt1= (Button) findViewById(R.id.bt1);
bt2= (Button) findViewById(R.id.bt2);
bt3= (Button) findViewById(R.id.bt3);
bt4= (Button) findViewById(R.id.bt4);
bt1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showToast1();
}
});
bt2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showToast2();
}
});
bt3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showToast3();
}
});
bt4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showToast4();
}
});
}
private void showToast1() {
Toast ts= Toast.makeText(this,R.string.putong,Toast.LENGTH_SHORT);
ts.show();
}
private void showToast2() {
Toast ts= Toast.makeText(this,R.string.yiwei,Toast.LENGTH_SHORT);
//第一个参数是位置,第二,三个是相对于现在位置的偏移量
ts.setGravity(Gravity.CENTER,50,-50);
//显示Toast
ts.show();
}
//这里是先通过ts.getView先获取布局对象,再给布局填充资源
private void showToast3() {
Toast ts=Toast.makeText(this,R.string.tupian,Toast.LENGTH_SHORT);
//ts.getView返回一个布局对象,不能返回View对象,因为没有view.addView()方法
LinearLayout toastlayout=(LinearLayout) ts.getView();
//创建一个ImageView对象的引用
ImageView iv=new ImageView(this);
//为ImageView对象加载资源
iv.setImageResource(R.drawable.she);
//把ImageView对象加载到布局中,0指的是ImageView在这个线性布局中的位置
toastlayout.addView(iv,0);
ts.show();
}
//先通过xml文件配置好布局资源,再生成View对象,再加载View对象
private void showToast4() {
// 俩种创建view对象的方式
// LayoutInflater inflater=LayoutInflater.from(this);
// View view=inflater.inflate(R.layout.toast,null);
View view =View.inflate(this,R.layout.toast,null);
//创建Toast对象也可以直接new出来
Toast ts= new Toast(this);
//为Toast填充View对象
ts.setView(view);
ts.show();
}
}
Toast解析的更多相关文章
- Android开发之Toast解析
Toast是Android系统提供的一个显示消息提示的类,它的使用非常简单,用途很广,如软件的升级,可以用它进行提示:退出程序时,也可以用它进行提醒,输入限制的提醒,等等. 使用场景: 1.需要提示用 ...
- Android源码解析——Toast
简介 Toast是一种向用户快速展示少量信息的视图.当它显示时,它会浮在整个应用层的上面,并且不会获取到焦点.它的设计思想是能够向用户展示些信息,但又能尽量不显得唐突.本篇我们来研读一下Toast的源 ...
- Toast实现源码解析
说明 本篇文章用于介绍Android中Toast的实现原理.和简单实现一个自定义的Toast. Toast实现 一般常用Toast格式为: Toast.makeText(context,"t ...
- 【Android自学日记】【转】Android Fragment 真正的完全解析(下)
上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Frag ...
- Android安全攻防战,反编译与混淆技术完全解析(下)
在上一篇文章当中,我们学习了Android程序反编译方面的知识,包括反编译代码.反编译资源.以及重新打包等内容.通过这些内容我们也能看出来,其实我们的程序并没有那么的安全.可能资源被反编译影响还不是很 ...
- Android安全攻防战,反编译与混淆技术完全解析(上)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/49738023 之前一直有犹豫过要不要写这篇文章,毕竟去反编译人家的程序并不是什么值 ...
- WebView解析
WebView解析 WebView是一个基于Webkit的,相当于内置浏览器的强大功能的组件,WebView的使用这么分四步说明:添加组件,加载资源,属性设置,辅助功能. 一.WebView的添加 ...
- Android之JSON解析
做个Android网络编程的同学一定对于JSON解析一点都不陌生,因为现在我们通过手机向服务器请求资源,服务器给我们返回的数据资源一般都是以JSON格式返回,当然还有一些通过XML格式返回,相对JSO ...
- 定位和xml解析和gson解析加上拉加载,下拉刷新
这里的上拉加载,下拉刷新用到是依赖包 Mainactivity,xml解析和定位 package com.exmple.autolayout; import java.util.List; impor ...
随机推荐
- #include "*.c"文件的妙用
今天我在看代码的时候突然看到在一个.c文件里包括了#include "*.c"代码,这个让我非常诧异,然后google了一下.才发现是这么回事情.以下我写了一个測试代码.我相信你看 ...
- 一个DIV相对于另一个DIV定位
<div style="position:relative"><div style="position:absolute; top:0px; left: ...
- flask的路由配置,特殊装饰器
1,flask中的路由 endpoint-url_for反向地址 endpoint默认是视图函数名endpoint="雪雪" methods 指定视图函数的请求方式,默认GET d ...
- POJ 3368 Frequent values RMQ ST算法/线段树
Frequent values Time Limit: 2000MS Memory Lim ...
- js权威指南
有很多js的细节基础不太了解,希望能通过阅读这本书查漏补缺!长期更新!
- get the page name from url
https://stackoverflow.com/questions/1874532/better-way-to-get-page-name The way I interpret the ques ...
- RabbitMQ的远程Web管理与监控工具
RabbitMQ提供了完善的管理和监控工具,分management plugin 和 rabbitmqctl 两种类型的工具. 1.management plugin rabbitmq-manage ...
- 通过查询数据库中的数据匹配在页面上:(set单条数据属性是在页面上的显示与foreach的不同) 通过ID修改提取位置表信息
ACTION OpenModifyExtractPositionById // set单条数据属性 /* * 通过ID修改提取位置表信息 */ public String OpenModifyEx ...
- 【转】Java 并发编程:核心理论
并发编程是Java程序员最重要的技能之一,也是最难掌握的一种技能.它要求编程者对计算机最底层的运作原理有深刻的理解,同时要求编程者逻辑清晰.思维缜密,这样才能写出高效.安全.可靠的多线程并发程序.本系 ...
- 洛谷P3004 宝箱Treasure Chest——DP
题目:https://www.luogu.org/problemnew/show/P3004 似乎有点博弈的意思,但其实是DP: f[i][j] 表示 i~j 的最优结果,就可以进行转移: 注意两个循 ...