提示信息——Toast
提示信息:當用戶執行某個操作後,自動顯示,過一會自動消失。
實現方法:
Toast.makeText(context,顯示的內容,時間的長短);
時間的長短爲兩個常量Toast.LENGTH_LONG或者Toast.LENGTH_SHORT
1.顯示文本
2.顯示圖片
3.顯示文本和圖片
package com.example.toast;
import android.os.Bundle;
import android.app.Activity;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.view.Gravity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
/*
* toast提示信息
*/
public class MainActivity extends Activity implements android.view.View.OnClickListener {
private Button btn1;
private Button btn2;
private Button btn3;
private Button btn4;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 =(Button) findViewById(R.id.button1);
btn1.setOnClickListener(this);
btn2 =(Button) findViewById(R.id.button2);
btn2.setOnClickListener(this);
btn3 =(Button) findViewById(R.id.button3);
btn3.setOnClickListener(this);
btn4 =(Button) findViewById(R.id.button4);
btn4.setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
toast1();
break;
case R.id.button2:
toast2();
break;
case R.id.button3:
toast3();
break;
case R.id.button4:
toast4();
break;
default:
break;
}
toast1();
}
//顯示圖文2(自己定義組件組合)
private void toast4() {
Toast t = new Toast(this);
t.setGravity(Gravity.CENTER, 0, 0);
ImageView iv = new ImageView(this); //新建顯示圖片組件
iv.setImageResource(R.drawable.ic_launcher);
TextView tv = new TextView(this); //新建顯示文字組件
tv.setText("圖片提示信息");
LinearLayout view = new LinearLayout(this); //新建佈局組件
view.setOrientation(LinearLayout.HORIZONTAL);
view.addView(iv); //將圖片組件加入到佈局組件linearlayout
view.addView(tv);
t.setView(view);
t.show();
}
//顯示圖文1
private void toast3() {
Toast t = Toast.makeText(this, "圖文提示信息", Toast.LENGTH_LONG);
t.setGravity(Gravity.CENTER, 0, 0);
// System.out.println(t.getView());
LinearLayout view = (LinearLayout)t.getView();
//設置佈局的方向爲水平方向
view.setOrientation(LinearLayout.HORIZONTAL);
ImageView iv = new ImageView(this);
iv.setImageResource(R.drawable.ic_launcher);
//在佈局中插入一個圖片組件
view.addView(iv, 0);
t.show();
}
//顯示圖片
private void toast2() {
Toast t = new Toast(this);
t.setDuration(Toast.LENGTH_LONG);//設置時間
//創建一個圖片組件對象
ImageView iv = new ImageView(this);
//綁定圖片資源(int類型的索引值)
iv.setImageResource(R.drawable.ic_launcher);
t.setView(iv);
//設置Toast信息顯示的位置
t.setGravity(Gravity.CENTER|Gravity.TOP, 0, 0);
t.show();
}
//顯示文件的提示信息
private void toast1() {
//(參數,上下文,文本內容,顯示時間)
Toast t = Toast.makeText(this,"Toast文本類型的信息", Toast.LENGTH_LONG);
t.show();
}
}
上圖第3個按鈕和第四個按鈕都是顯示圖片和文字的提示信息,只是在代碼的實現上稍有差別,第四個按鈕是自定義設計組件,思路比較清晰。