我已按照教程重新尝试了自定义Toast:
http://developer.android.com/guide/topics/ui/notifiers/toasts.html#CustomToastView
使用这样的布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toast_layout_root"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="8dp"
android:background="#DAAA"
>
<ImageView android:src="@drawable/droid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="8dp"
/>
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFF"
/>
</LinearLayout>
但似乎根布局中的fill_parent无效。
你是否知道如何解决这个问题才能获得全屏Toast?
答案 0 :(得分:20)
在显示Toast:
之前添加此项toast.setGravity(Gravity.FILL, 0, 0);
答案 1 :(得分:1)
要完全填充其容器大小的水平和垂直面包,您需要使用
在Yoah的回答中提到了我试过跟随它并且有效。
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.FILL, 0, 0);
toast.setView(view); //inflated view
toast.setDuration(Toast.LENGTH_LONG);
toast.show();