Android攻城狮重新认识Toast

【Android攻城狮重新认识Toast】识字粗堪供赋役,不须辛苦慕公卿。这篇文章主要讲述Android攻城狮重新认识Toast相关的知识,希望能为你提供帮助。

什么是Toast 1. Toast是一种提供给用户简洁提示信息的视图。 2. 该视图以悬浮于应用程序之上的形式呈现给用户。Toast提示界面不获取焦点,所以不影响用户的操作。Toast提示就是在不影响用户使用程序的同时,给用户提供某些提示信息。 3. android提供的Toast类可以创建和显示该Toast信息。Toast常用方法 Toast.makeText(context,text,duration); // 返回值为Toast toast.setDuration(duration); // 设置持续时间 toast.setGravity(gravity,xOffset,yOffset); // 设置toast位置 toast.setText(s); // 设置提示内容 toast.show(); // 显示


toast.setGravity(gravity,x0ffset,y0ffset); gravity: 通过 Gravity.xxxx 选择位置,注意 Gravity 不要漏掉 x0ffset: 相对当前位置的X轴(横向)的偏移量 y0ffset: 相对当前位置的Y轴(纵向)的偏移量

1 public class MainActivity extends ActionBarActivity { 2 3@Override 4protected void onCreate(Bundle savedInstanceState) { 5super.onCreate(savedInstanceState); 6setContentView(R.layout.fragment_main); 7initEvent(); 8 9} 10 11// 初始化点击事件 12private void initEvent() { 13// TODO Auto-generated method stub 14findViewById(R.id.button1).setOnClickListener(new OnClickListener() { 15 16@Override 17public void onClick(View v) { 18// TODO Auto-generated method stub 19showToast1(); 20} 21}); 22} 23 24// 显示默认toast 25private void showToast1() { 26// Toast toast=Toast.makeText(this, 27// R.string.app_name,Toast.LENGTH_LONG); 28Toast toast = Toast.makeText(this, "默认的Toast", Toast.LENGTH_LONG); 29toast.show(); 30} 31 32// 显示自定义位置的Toast 33private void showToast2() { 34// Toast toast=Toast.makeText(this, 35// R.string.app_name,Toast.LENGTH_LONG); 36Toast toast = Toast.makeText(this, "改变位置的Toast", Toast.LENGTH_LONG); 37// toast.setGravity(gravity,x0ffset,y0ffset); 38// gravity: 通过 Gravity.xxxx 选择位置,注意 Gravity 不要漏掉 39// x0ffset: 相对当前位置的X轴(横向)的偏移量(负向左正向右), 40// y0ffset: 相对当前位置的Y轴(纵向)的偏移量(负向上正向下) 41toast.setGravity(Gravity.CENTER, 0, 0); 42 43toast.show(); 44} 45 46// 显示带有图片的Toast 47private void showToast3() { 48// Toast toast=Toast.makeText(this, 49// R.string.app_name,Toast.LENGTH_LONG); 50Toast toast = Toast.makeText(this, "带有图片的Toast", Toast.LENGTH_LONG); 51LinearLayout toastLayout = (LinearLayout) toast.getView(); 52ImageView imageView = new ImageView(this); 53imageView.setImageResource(R.drawable.ic_launcher); 54 55toastLayout.addView(imageView, 0); // 图片在文字上方 56toast.show(); 57} 58 59// 自定义的toast 60private void showToast4() { 61// Toast toast=Toast.makeText(this, 62// R.string.app_name,Toast.LENGTH_LONG); 63LayoutInflater inflater = LayoutInflater.from(this); 64View toastView = inflater.inflate(R.layout.toast, null); 65Toast toast = new Toast(this); 66toast.setView(toastView); 67toast.show(); 68} 69 }

自定义Toast的代码。注意这里是setView(),而不是addView()。 另外在 R.layout.toast_layout 里面是我们自定义的 Toast 布局。本例中是一个ImageView,在其上下各有一个TextView。




    推荐阅读