您的位置:首页 > 移动开发 > Android开发

Android的各种Toast .

2012-09-22 09:06 375 查看
Toast仅仅是向用户做出一个提示,提示有各种各样的方式。下面将一一道来。

1.最简单的Toast

[java]
view plain
copy
print
?

Toast.makeText(this, "默认", Toast.LENGTH_SHORT).show();

Toast.makeText(this, "默认", Toast.LENGTH_SHORT).show();


2.自定义显示位置的Toast

[java]
view plain
copy
print
?

Toast t;

t=Toast.makeText(this, "自定义显示位置", Toast.LENGTH_SHORT);

t.setGravity(Gravity.CENTER, 0, 0);

t.show();

Toast t;
t=Toast.makeText(this, "自定义显示位置", Toast.LENGTH_SHORT);

t.setGravity(Gravity.CENTER, 0, 0);
t.show();


3带图片的Toast

[java]
view plain
copy
print
?

t=Toast.makeText(this, "带图片的Toast", Toast.LENGTH_SHORT);

LinearLayout ll=(LinearLayout) t.getView();

ImageView iv=new ImageView(this);

iv.setBackgroundResource(R.drawable.ic_launcher);

ll.addView(iv,0);

t.show();

t=Toast.makeText(this, "带图片的Toast", Toast.LENGTH_SHORT);
LinearLayout ll=(LinearLayout) t.getView();
ImageView iv=new ImageView(this);
iv.setBackgroundResource(R.drawable.ic_launcher);
ll.addView(iv,0);
t.show();


4.完全自定义的Toast

[java]
view plain
copy
print
?

t=new Toast(this);

LayoutInflater li=this.getLayoutInflater();

View vee=li.inflate(R.layout.iii, null);

t.setView(vee);

t.show();

t=new Toast(this);
LayoutInflater li=this.getLayoutInflater();
View vee=li.inflate(R.layout.iii, null);
t.setView(vee);
t.show();


5.来自其它线程的Toast

[java]
view plain
copy
print
?

Handler h=new Handler();

///////////////////////////////////////////////////

new Thread(){

@Override

public void run() {

showToast();

}

}.start();

////////////////////////////////////////////////////////

protected void showToast() {

h.post(new Runnable(){

@Override

public void run() {

Toast.makeText(getApplicationContext(), "come from other thread", Toast.LENGTH_SHORT).show();

}

});

}

Handler h=new Handler();
///////////////////////////////////////////////////
new Thread(){

@Override
public void run() {
showToast();
}

}.start();
////////////////////////////////////////////////////////
protected void showToast() {
h.post(new Runnable(){

@Override
public void run() {
Toast.makeText(getApplicationContext(), "come from other thread", Toast.LENGTH_SHORT).show();
}

});

}


来自其它线程的Toast我有一点要说明,h.post(Runnable r);这个方法里的run是在主线程的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android toast