美文网首页
自定义Toast

自定义Toast

作者: Anivia_Hanger | 来源:发表于2019-11-07 18:08 被阅读0次

    代码:

    public class MyToast {
    
    private static MyToastmyMyToast;
    
        private ViewtoastRoot;
    
        private Toasttoast;
    
        private TextViewtv;
    
        private MyToast(Context context) {
    
    toastRoot = ((Activity) context).getLayoutInflater().inflate(R.layout.my_toast, null);
    
            toast =new Toast(context.getApplicationContext());
    
            toast.setView(toastRoot);
    
            tv = (TextView)toastRoot.findViewById(R.id.tv_toast_msg);
    
        }
    
    public static void showToast(Context context, int resid) {
    
    String message = context.getString(resid);
    
            showToast(context, message);
    
        }
    
    public static void showToast(Context context, String message) {
    
    showToast(context, message, Toast.LENGTH_SHORT);
    
        }
    
    private static void showToast(Context context, String message, int length) {
    
    if (myMyToast ==null) {
    
    myMyToast =new MyToast(context);
    
            }
    
    myMyToast.show(message, length);
    
        }
    
    private void show(String message, int length) {
    
    tv.setText(message);
    
            toast.setDuration(length);
    
            toast.show();
    
        }
    
    public static void showLongToast(Context context, int resId) {
    
    String s = context.getString(resId);
    
            showLongToast(context, s);
    
        }
    
    public static void showLongToast(Context context, String s) {
    
    showToast(context, s, Toast.LENGTH_LONG);
    
        }
    
    }
    
    

    布局:

    <?xml version="1.0" encoding="utf-8"?>
    
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    
        android:layout_width="wrap_content"
    
        android:layout_height="wrap_content"
    
        android:layout_gravity="center"
    
        android:gravity="center"
    
        android:background="@drawable/tips">
    
            android:id="@+id/tv_toast_msg"
    
            android:gravity="center"
    
            android:layout_height="wrap_content"
    
            android:layout_width="wrap_content"
    
            android:layout_marginLeft="35dp"
    
            android:layout_marginRight="35dp"
    
            android:text="1234"
    
            android:textSize="35sp"
    
            android:textColor="#FF0C0D13"
    
            android:layout_gravity="center_vertical"
    
        />
    
    </LinearLayout>
    

    Drawable:

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    
                <!-- 第一层 -->
    
    
                        <solid android:color="#00a1bd"/>
    
                        <corners android:radius="100dp"/>
    
                        <size android:height="100dp" android:width="600dp">
    
                <!-- 第二层 -->
    
                <item android:bottom="6dp" android:right="6dp" android:top="6dp" android:left="6dp">
    
                        <solid android:color="#00d7fc"/>
    
                        <corners android:radius="88dp"/>
    
    </selector>
    

    相关文章

      网友评论

          本文标题:自定义Toast

          本文链接:https://www.haomeiwen.com/subject/mogvbctx.html