android小知识之自定义通知(toast)

Toast是较为熟悉的通知,但默认方式比较单调,可以根据自己的需求自定义,在统一UI风格的时候可以单独拿出来做一个工具类来使用。

下面我在Fragment中定义的一个按键弹出自定义Toast,在Activity中同样使用,只需要把上下文参数(getActivity())改为当前activity.this即可。

btn.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
    // TODO Auto-generated method stub
   Toast toast=new Toast(getActivity());
   View view=LayoutInflater.from(getActivity()).inflate(R.layout.notification,null);
   ImageView img=(ImageView)view.findViewById(R.id.imageView1);
   img.setImageResource(R.drawable.ic_launcher);
   TextView text=(TextView)view.findViewById(R.id.textView1);
   text.setText("这是自定义通知的示例!");
   toast.setDuration(Toast.LENGTH_SHORT);

//重力常量常数GravityX方向偏移和Y方向偏移,如果想让位置向右移,就增加第二个参数的值;要向下移,就增加最后一个参数的值。
   toast.setGravity(Gravity.CENTER,0, 100);


   toast.setView(view);
   toast.show();
    
   }
  });

另外还有一种通知,类似于短讯通知,先在上面显示通知有信息,拉下来点击后获得详细信息。

            private NotificationManager  manger;

            private NotificationManager.Build  build;

也可以进行自定义这样的通知:

自己觉得这样的东西完全可以做成一个小demo,封装成一个方法,随调随用。

最近又看了篇文章,不错,加上去,http://www.cnblogs.com/hanyonglu/archive/2012/03/04/2378971.html

原文地址:https://www.cnblogs.com/ws5861/p/3446868.html