欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于自定義Toast全面解析

 更新時(shí)間:2017年10月09日 10:19:56   作者:HankingHu  
下面小編就為大家?guī)硪黄谧远xToast全面解析。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

Toast一般用來顯示一行文字,用法比較固定:

Toast.makeText(Context context,String message,int duration);

但是有時(shí)候想用toast 來顯示復(fù)雜的view甚至是帶有圖片的view時(shí)這時(shí)候就要用到自定義的Toast,自定義Toast主要用到一下幾個(gè)方法如圖:

1.setView()方法用來顯示用戶自定義的view.

2. setGravity()用來確定Toast顯示的位置.

3.setDuration()用來設(shè)置Toast顯示的時(shí)間長短,只有兩種選擇,LENGTH_SHORT,LENGTH_LONG,都是int型。

4.setText()用來顯示一段文字,但是要注意的時(shí)setText()與setView(),不能同時(shí)使用不然就會(huì)出錯(cuò)。

下面通過一個(gè)完整的代碼來看看如何實(shí)現(xiàn)一個(gè)自定義的Toast:

Toast_view.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical"
  android:gravity="center"
>
  <ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/tianjia_p"
    android:layout_gravity="center"
    />
  <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="hello world"
    android:layout_gravity="center_horizontal"
    android:textSize="20dp"
    />
</LinearLayout>

Activity_main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  >
  <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/myButton"
    android:text="button"
    />
</LinearLayout>

ToastUtil:

public class ToastUtil {
  private static Toast toast;
  public static void showToast(int duration,View mview,Context context)
  {
    if (toast==null) {
      toast = new Toast(context);
    }
    toast.setDuration(duration);
    toast.setView(mview);
    toast.show();
  }
}

MainActivity:

public class MainActivity extends AppCompatActivity {
private View toast_view;
  private Button button;
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    LayoutInflater inflater=LayoutInflater.from(this);
    toast_view =inflater.inflate(R.layout.toast_view,null);
    button=(Button)findViewById(R.id.myButton);
    button.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View v) {
        ToastUtil.showToast(Toast.LENGTH_SHORT,toast_view,getApplicationContext());
      }
    });
  }
}

上面的ToastUtil工具類 寫的不好,大家可以自己改寫自己的ToastUtil類。

以上這篇基于自定義Toast全面解析就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論