1. 程式人生 > >自定義Toast 顯示文字和圖片

自定義Toast 顯示文字和圖片

Toast用於提示當前應用的狀態資訊,如網路連線狀態等,一般是顯示一段文字,也可以定製自己的Toast。下面舉例說明:
 
public class MyActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button1 = (Button) findViewById(R.id.button1);
Button button2 = (Button) findViewById(R.id.button2);

//點選顯示圖片
button1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Toast toast = new Toast(MyActivity.this);
ImageView view = new ImageView(MyActivity.this);
view.setImageResource(R.drawable.icon);
toast.setView(view);
toast.setDuration(Toast.LENGTH_LONG);
toast.show();
}
});

//點選顯示文字和圖片
button2.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Toast toast = new Toast(MyActivity.this);
LinearLayout layout = new LinearLayout(MyActivity.this);
layout.setOrientation(LinearLayout.VERTICAL);

ImageView view = new ImageView(MyActivity.this);
view.setImageResource(R.drawable.icon);
TextView textView = new TextView(MyActivity.this);
textView.setText("Toast顯示文字和圖片");

layout.addView(view);
layout.addView(textView);
toast.setView(layout);
toast.show();

}
});
}
}


執行結果如下
當點選第一個按鈕後,顯示圖片Toast:

[img]http://dl.iteye.com/upload/attachment/350252/ed10744e-7a90-3634-bc1c-86ae0950887c.jpg[/img]

當點選第二個按鈕後,顯示文字和圖片Toast:

[img]http://dl.iteye.com/upload/attachment/350254/2b41f557-9399-374f-9033-3d5d16fc98c2.jpg[/img]