Android 提醒用户输入错误的方法

第一种:

Toast是我们经常使用的弹出消息的方法,弹出变量内容,弹出异常,提醒用户输入错误等,用途很广,在android studio中,有一个快捷的方式,输入Toast选择Create a new Toast,就出现Toast.makeText(context, "", Toast.LENGTH_SHORT).show();这样的代码,稍作修改即可

Toast的显示位置

if (textView.getText().toString().length()!=0){
  Toast toast = Toast.makeText(TestLayoutActivity.this, "Toast show",
      Toast.LENGTH_LONG);
      //可以控制toast显示的位置
      toast.setGravity(Gravity.TOP, 0, 10);
      toast.show();
        }

设置边距,文本。。


cancel();取消

setDuration();只有两种LENGTH_LONG,LENGTH_SHORT

setGravity(int gravity, int xOffset, int yOffset)位置重心,x偏移,y偏移

自定义是通过inflater实现的

LayoutInflater inflater = getLayoutInflater();
        View view = inflater.inflate(R.layout.toast, null);
        image = (ImageView) view.findViewById(R.id.image);
        title = (TextView) view.findViewById(R.id.title);
        content = (TextView) view.findViewById(R.id.content);
        image.setBackgroundResource(R.drawable.ic_launcher);
        title.setText("自定义toast");
        content.setText("hello,self toast");
        Toast toast = new Toast(getApplicationContext());
        toast.setGravity(Gravity.CENTER, 0, 0);
        toast.setDuration(Toast.LENGTH_SHORT);
        toast.setView(view);
        toast.show();

第二种:

EditText的setError方法

具体的使用方法为

1、

EditText et=(EditText )findViewById(R.id.item_edit);

et.setError("输入错误,请重新输入");


2、

Drawable d=getResources().getDrawable(R.mipmap.ic_launcher_round);

d.setBounds(10,10,60,60);//设置边界或界限,这个是必须设置
mEt.setError("输入错误,请重新输入",d);


d.setAlpha(0);//设置下透明度,范围0~255


3、当你不想显示错误,可以设置error为null

mEt.setError(null);

使用中可能会出现图标或红色的叹号不出现的问题?

解决方法:1、有可能EditText的长度太短,输入的太多,快满了,判断位数时可能会出问题

2、setError中传入的参数是CharSequence类型,那么就可以使用Android提供的Html模式来改变字体颜色或者其他样式。

et.setError(Html.fromHtml("<font color=#E10979>输入错误<br/>请正确输入</font>"));  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值