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;
}
}