zoukankan      html  css  js  c++  java
  • 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
     4     protected void onCreate(Bundle savedInstanceState) {
     5         super.onCreate(savedInstanceState);
     6         setContentView(R.layout.fragment_main);
     7         initEvent();
     8 
     9     }
    10 
    11     // 初始化点击事件
    12     private void initEvent() {
    13         // TODO Auto-generated method stub
    14         findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
    15 
    16             @Override
    17             public void onClick(View v) {
    18                 // TODO Auto-generated method stub
    19                 showToast1();
    20             }
    21         });
    22     }
    23 
    24     // 显示默认toast
    25     private void showToast1() {
    26         // Toast toast=Toast.makeText(this,
    27         // R.string.app_name,Toast.LENGTH_LONG);
    28         Toast toast = Toast.makeText(this, "默认的Toast", Toast.LENGTH_LONG);
    29         toast.show();
    30     }
    31 
    32     // 显示自定义位置的Toast
    33     private void showToast2() {
    34         // Toast toast=Toast.makeText(this,
    35         // R.string.app_name,Toast.LENGTH_LONG);
    36         Toast 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轴(纵向)的偏移量(负向上正向下)
    41         toast.setGravity(Gravity.CENTER, 0, 0);
    42 
    43         toast.show();
    44     }
    45 
    46     // 显示带有图片的Toast
    47     private void showToast3() {
    48         // Toast toast=Toast.makeText(this,
    49         // R.string.app_name,Toast.LENGTH_LONG);
    50         Toast toast = Toast.makeText(this, "带有图片的Toast", Toast.LENGTH_LONG);
    51         LinearLayout toastLayout = (LinearLayout) toast.getView();
    52         ImageView imageView = new ImageView(this);
    53         imageView.setImageResource(R.drawable.ic_launcher);
    54 
    55         toastLayout.addView(imageView, 0);// 图片在文字上方
    56         toast.show();
    57     }
    58 
    59     // 自定义的toast
    60     private void showToast4() {
    61         // Toast toast=Toast.makeText(this,
    62         // R.string.app_name,Toast.LENGTH_LONG);
    63         LayoutInflater inflater = LayoutInflater.from(this);
    64         View toastView = inflater.inflate(R.layout.toast, null);
    65         Toast toast = new Toast(this);
    66         toast.setView(toastView);
    67         toast.show();
    68     }
    69 }
    自定义Toast的代码。注意这里是setView(),而不是addView()。
    另外在 R.layout.toast_layout 里面是我们自定义的 Toast 布局。本例中是一个ImageView,在其上下各有一个TextView。
  • 相关阅读:
    qt中使用C++thread
    qt--mask蒙版
    qt--调色板QPalette
    qt--Q_PROPERTY自定义属性
    路由扩张器
    qt-QBitmap单色图
    qt-QPixmap
    nodejs中的文件系统
    深入理解nodejs中的异步编程
    Vue 事件监听
  • 原文地址:https://www.cnblogs.com/my334420/p/6784893.html
Copyright © 2011-2022 走看看