图片文字可视化提醒Toast是将定义的Layout包含(TextView ImageView)等放在Toast中让提示的Toast对象不只是图片也可以图片文字并存
首先定一个Activity;
package cn.com.hwttnet; import android.app.Activity; import android.os.Bundle; import android.text.util.Linkify; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; public class EX05_07Activity extends Activity { private Button show; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); show = (Button) findViewById(R.id.btn); show.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub ImageView iv = new ImageView(getApplication()); TextView tv = new TextView(getApplication()); LinearLayout lly = new LinearLayout(getApplication()); //tv.setText("http:www.baidu.com"); //tv.setText("显示汉字你好"); tv.setText("15930738139"); //判断tv的内容为何,并与系统做链接 Linkify.addLinks(tv, Linkify.WEB_URLS | Linkify.EMAIL_ADDRESSES | Linkify.PHONE_NUMBERS); //用Toast显示方式 Toast toast = Toast.makeText(EX05_07Activity.this , tv.getText(), Toast.LENGTH_LONG); //自定义View View textView=toast.getView(); //以水平方式排列 lly.setOrientation(LinearLayout.HORIZONTAL); //在ImageView里面指定要显示的图片 iv.setImageResource(R.drawable.ic_launcher); //在Layout里面添加创建的View 图片 lly.addView(iv); //在Toast里面显示文字 就是显示的那些汉字 lly.addView(textView); //以toast setView方法将LinearLayout传入 toast.setView(lly); toast.show(); } }); } }
main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <Button android:id="@+id/btn" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="显示具有图片跟文字的Toast" /> </LinearLayout>
<!--StartFragment -->