Android自定義Toast樣式實現(xiàn)方法詳解
原生Toast樣式

自定義Toast樣式

創(chuàng)建樣式
所謂自定義一個Toast就是建立一個布局文件,然后使用一個view容器承載,然后顯示出來。Toast畢竟只是起到一個提示作用,不必要放太多控件去填充,反而會顯得內容很擁擠,一般一個標題,一張圖片,一段簡短文字即可。
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/white_radius_10">
<LinearLayout
android:layout_width="120dp"
android:layout_height="100dp"
android:gravity="center"
android:orientation="vertical"
android:layout_gravity="center">
<ImageView
android:layout_width="30dp"
android:layout_height="30dp"
android:src="@drawable/icon_error" />
<TextView
android:id="@+id/ErrorTips"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:gravity="center"
android:text="密碼錯誤,請重試!"
android:textColor="#099A9F"
android:textSize="15sp"
android:ellipsize="end"/>
</LinearLayout>
</FrameLayout>
封裝
因為我們在開發(fā)中需要頻繁使用Toast,所以使用一個類將其封裝起來,復用其功能,增強代碼可讀性,可行性。根據(jù)自己的開發(fā)需求,可以向外暴露修改內容,圖片,顏色,文字大小等方法,由于Toast內附控件較少,就可以直接將其控件ID和布局文件定義為常量引用。
public class ToastFormat {
private Context context;
private TextView tipsText;
private Toast toast = null;
private static final int ContentID = R.id.ErrorTips;
private static final int LayoutID = R.layout.passworderror;
public ToastFormat(Context context){
this.context = context;
}
public void InitToast(){
if (toast == null) {
toast = new Toast(context);
View view = LayoutInflater.from(context).inflate(LayoutID, null, false);
tipsText = view.findViewById(ContentID);
toast.setView(view);
}
}
public void setGravity(int gravity){
toast.setGravity(gravity, 0, 0);
}
public void setText(String tips){
tipsText.setText(tips);
}
public void show(){
toast.show();
}
public void setShowTime(int time){
toast.setDuration(time);
}
public void setTextColor(int color){
tipsText.setTextColor(context.getResources().getColor(color));
}
public void setTextSize(float size){
tipsText.setTextSize(size);
}
}
引用
定義對象
private ToastFormat format;
初始化
format = new ToastFormat(MainActivity.this); format.InitToast();
設置顯示文字內容
format.setText("自定義Toast");最后顯示 Toast
format.show();
到此這篇關于Android自定義Toast樣式實現(xiàn)方法詳解的文章就介紹到這了,更多相關Android自定義Toast內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Flutter中嵌入Android 原生TextView實例教程
這篇文章主要給大家介紹了關于Flutter中嵌入Android 原生TextView的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-09-09
ViewPager+RadioGroup實現(xiàn)左右滑動卡片布局
這篇文章主要為大家詳細介紹了ViewPager+RadioGroup實現(xiàn)左右滑動卡片布局,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-02-02
Android編程實現(xiàn)對電池狀態(tài)的監(jiān)視功能示例
這篇文章主要介紹了Android編程實現(xiàn)對電池狀態(tài)的監(jiān)視功能,涉及Android基于廣播實現(xiàn)針對電源電量的判定與監(jiān)視技巧,需要的朋友可以參考下2016-11-11
Android仿餓了么加入購物車旋轉控件自帶閃轉騰挪動畫的按鈕效果(實例詳解)
這篇文章主要介紹了Android仿餓了么加入購物車旋轉控件自帶閃轉騰挪動畫的按鈕效果(實例詳解)的相關資料,需要的朋友可以參考下2017-01-01

