吐司的内容不单单只有吐司文字,还可以吐司图片或者图片和文字.首先,我们先认识下面两个方法
- toast.setGravity(gravity,xOffest,yOffset) 设置Toast的位置
- toast.setView(View v) 设置吐司的样式
代码如下:
//获取一个Toast对象,为下面操作准备 Toast toast = new Toast(this); ImageView img = new ImageView(this); //用系统提供的图片 img.setImageResource(R.drawable.ic_launcher); //设置图片 toast.setView(img); toast.show();
显示图片和文字的吐司
代码如下:
Toast toast = Toast.makeText(this, "这是一个有图片的吐司", Toast.LENGTH_LONG); ImageView img = new ImageView(this); img.setImageResource(R.drawable.ic_launcher); //得到toast的布局对象 LinearLayout toast_layout = (LinearLayout) toast.getView(); //为toast添加图片资源,第二个参数,0表示图片在上 toast_layout.addView(img,1); toast.show();
自定义Toast
布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="60dp" android:orientation="horizontal"> <TextView android:layout_width="80dp" android:layout_height="match_parent" android:gravity="center" android:text="文字"/> <ImageView android:layout_width="wrap_content" android:layout_height="match_parent" android:src="@drawable/ic_launcher_round"/> </LinearLayout>
Activity代码:
//构造来创建Toast Toast toast = new Toast(this); //创建要显示的view ImageView imageView = new ImageView(this); imageView.setImageResource(R.drawable.ic_launcher); //设置属性 toast.setView(imageView); toast.setDuration(Toast.LENGTH_SHORT); toast.show();![]()