效果如下所示:

我封裝了一個類出來:
package com.amt.appstore.widgets;import com.amt.appstore.R;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.widget.TextView;import android.widget.Toast;public class CustomerToast { static Toast toast; public static void showToast(Context context, String content) { LayoutInflater inflater = LayoutInflater.from(context); View view = inflater.inflate(R.layout.toast_custome, null); TextView tv = (TextView) view.findViewById(R.id.text); tv.setText(content); //防止多次點擊按鈕出現(xiàn)很多toast一直不消失 if (toast != null) { toast.setView(view); } else { toast = new Toast(context); toast.setView(view); toast.setDuration(Toast.LENGTH_SHORT); } toast.show(); }}toast_custome里的代碼如下所示:<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="match_parent" android:background="@drawable/selected_etoast_background" > <ImageView android:id="@+id/toast" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="13dp" android:layout_marginTop="10dp" android:src="@drawable/toast" /> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="12dp" android:layout_marginTop="5dp" android:layout_toRightOf="@id/toast" android:text="請先選擇類別" android:textColor="@color/white" android:textSize="24sp" /> <TextView android:layout_width="10dp" android:layout_height="5dp" android:layout_toRightOf="@id/text" /> <TextView android:layout_width="wrap_content" android:layout_height="5dp" android:layout_below="@id/text" /></RelativeLayout>下面的兩個TextView是分別讓toast變寬一些,和變高一些,這樣會好看一些。
在drawable/selected_etoast_background里的代碼如下所示:
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" > <!-- 內部顏色 --> <solid android:color="@color/black" /> <!-- 邊緣線條顏色 --> <stroke android:width="1dp" android:color="#00ffde" /> <!-- 圓角的幅度 --> <corners android:radius="1dp" /> </shape>
上面的感嘆號圖片,如下所示:

這樣在Activity里用的時候,如下代碼所示:
CustomerToast.showToast(AppWallActivity.this, "請先選擇類型!");
結束。
以上這篇自定義toast外形,多次點擊不會總是彈出toast的實現(xiàn)方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網(wǎng)。
新聞熱點
疑難解答