自定義toast的使用
寫一個佈局檔案:
<?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:background="@drawable/toast_view_bg"
android:gravity="center"
android:orientation="horizontal" >
<ImageView
android:id="@+id/iv"
android:layout_width="30dp"
android:layout_height="30dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="使用者提示" />
</LinearLayout>
佈局的佈局寫一個shape檔案:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"
android:useLevel="false" >
<solid android:color="#880000ff" />
<corners android:radius="5dp"/>
<size
android:height="50dp"
android:width="50dp" />
</shape>
程式碼邏輯的實現:
寫一個BaseActivity或者在BaseFragment寫一個關於彈出toast的方法
public class BaseAbtivity extends Activity {
private TextView tv;
private View view;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
public void showToast(String msg) {
Toast toast = new Toast(this);
tv = (TextView) view.findViewById(R.id.tv);
tv.setText(msg);
toast.setView(view);
toast.show();
}
}
如果需要toast顯示更加多樣就自己修改佈局就可以實現了。