首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

2013年三月19日-Toast对象的特殊使用

2013-03-22 
2013年3月19日----Toast对象的特殊使用Toast对象的特殊使用Toast是Android专属的提示小对象,它的使用方式

2013年3月19日----Toast对象的特殊使用

Toast对象的特殊使用

       Toast是Android专属的提示小对象,它的使用方式相当的简单,只要如下代码就可以运行:

             Toast.makeText(getApplicationContext(), “字符串”, Toast.LENGTH_LONG).show();

      不过其通途却很广泛,基本上,Toast就是一个简短的小信息,将要告诉用户的信息以一个浮动在最上层的View显示, Toast显示之后静待几秒钟就会自动消失,最常见的就是音量大小的调整。

      Toast显示后会在一定时间内消失,在Toast构造参数中的第三个参数为显示的时间常数,可设置为LENGTH_LONG或LENGTH_SHORT,前者提示时间较长。

      比较特别的是我们可以重写Toast对象的方法,自定义Toast显示的Layout,以不同于系统内置的方式显示客制化的Toast对象,如要在Toast里显示图片(Drawable),方式如下:

                            Toast toast = new Toast(getApplicationContext());

                            ImageView imageView = new ImageView(getApplicationContext());

                            imageView.setImageResource(R.drawable.a11);

                            toast.setView(imageView);

                            toast.show();

      或显示自定义的Layout Widget(如TextView),则写法如下:

                           Toast toast = new Toast(getApplicationContext());

                            TextView  View = new TextView(getApplicationContext());

                            View.setText(“小武灵灵”);

                            toast.setView(View);

                            toast.show();

      或者通过AlertDialog.Builder来创建类似Toast的信息对象,读者可以实现看看,实际比较两者有何不同:

                            AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);

                            alertDialog.setTitle("小武提示");

                            alertDialog.setMessage("这是一段信息");

                            alertDialog.show();

 

另外,对于CheckBox的OnTouchListener(屏幕触控事件),有如下特别之处:

              class checkBoxTouchLst implements OnTouchListener       {              public boolean onTouch(View v, MotionEvent event) {                                          //判断在触控笔指压此空间时的状态                     if (checkBox.isChecked() == false) {                            //当触控笔放开后的动作                     }                     else if(checkBox.isChecked() == true)                     {                            //当触控笔压下后的动作                     }                     return false;              }       } 


 

热点排行