一、Toast自定义显示位置效果
Toast toast = Toast.makeText(getApplicationContext(),
"自定义位置Toast", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
二、Toast带图片
Toast toast = Toast.makeText(getApplicationContext(),"带图片的Toast", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
LinearLayout toastView = (LinearLayout) toast.getView();
ImageView image = new ImageView(getApplicationContext());
image.setImageResource(R.drawable.icon);
toastView.addView(image, 0);
toast.show();
三、完全自定义Toast
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.toast_item,(ViewGroup) findViewById(R.id.newToast));//慎用强转,一般使第二个参数为null
ImageView image = (ImageView) layout.findViewById(R.id.imageView1);
image.setImageResource(R.drawable.icon);
TextView title = (TextView) layout.findViewById(R.id.textView1);
title.setText("标题");
TextView text = (TextView) layout.findViewById(R.id.textView2);
text.setText("完全自定义Toast");
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.RIGHT | Gravity.TOP, 12, 40);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
toast_item.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <LinearLayout android:id="@+id/newToast" android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/toast"> <TextView android:text="TextView" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView> <ImageView android:layout_width="wrap_content" android:id="@+id/imageView1" android:src="@drawable/icon" android:layout_height="wrap_content"></ImageView> <TextView android:text="TextView" android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="@color/black"></TextView> </LinearLayout> </LinearLayout>