Toast的显示我想大家也应该会的,这是我对toast的
理解,不对之处请朋友们指出了。如下:
Context context = getApplicationContext();
CharSequence text = "我的Toast";
int duration = Toast.LENGTH_SHORT; //Toast的显示时间Toast.LENGTH_LONG
Toast toast = Toast.makeText(context, text, duration);
toast.show();
或者也可以这样:
Toast.makeText(context, text, duration).show();
通常情况下,Toast都是在手机屏幕的底部显示的,我们也可以用 setGravity(int, int, int) 来
自定义Toast的位置,第一个参数为Gravity,第二个和第三个参数是Toast的起点x,y坐标位置。如果想让Toast出现在屏幕的左上角位置,可以这样:
toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 0);
其实我们也可以定义自己的Toast,下面讲解自己制作Toast的过程。
首先定义一个名为mytoast的xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toast"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dip"
android:background="#DAAA"
>
<ImageView android:id="@+id/image01"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="10dip"
/>
<TextView android:id="@+id/text01"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#FFF"
/>
</LinearLayout>
然后定义Toast:
LayoutInflater inflater = getLayoutInflater(); //也可以用getSystemService().
View toastView = inflater.inflate(R.layout.mytoast,
(ViewGroup) findViewById(R.id.toast));
ImageView image = (ImageView) layout.findViewById(R.id.image);
image.setImageResource(R.drawable.android);
TextView text = (TextView) layout.findViewById(R.id.text);
text.setText("hi!这是我的toast");
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(toastView);
toast.show();
这样就定义了自己的toast。