Android中Toast的用法
16lz
2021-01-23
Toast是Android中用来显示显示信息的一种机制,和Dialog不一样的是,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);//新建一个imageview,然后加入到toastview中 toast.show();
4.完全自定义效果
代码
LayoutInflater inflater = getLayoutInflater(); View layout = inflater.inflate(R.layout.custom,(ViewGroup) findViewById(R.id.llToast));
//新建一个imageview,然后加进去 ImageView image = (ImageView) layout.findViewById(R.id.tvImageToast); image.setImageResource(R.drawable.icon);
//TextView是用来显示文字内容的 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.其他线程通过Handler的调用
Java代码 //调用方法1 //Thread th=new Thread(this); //th.start(); //调用方法2 handler.post(new Runnable() { @Override public void run() { showToast(); } }); Java代码 public void showToast(){ Toast toast=Toast.makeText(getApplicationContext(), "Toast在其他线程中调用显示", Toast.LENGTH_SHORT); toast.show(); } Java代码 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); } }; Java代码 @Override public void run() { handler.sendEmptyMessage(1); }
更多相关文章
- Android线程Handler的学习
- TextView/EditText各种各样的效果
- Android:android.git.kernel.org 无法访问时下载源代码的解决方法
- 安卓霓虹灯效果
- Android TextView 中文本横向滚动效果实现
- Android UI开发第八篇――ViewFlipper 左右滑动效果
- [Tools]Android Studio代码提示功能--Ctrl+Alt+Space(空格键)