single无效,使用maxLines

今天说一说简单的问题:

可以看到android studio 在xml布局文件中输入singleLine时可以看到提示已过时的标志。

先看下singleLine的注释;

Use  maxLines  instead to change the layout of a static text,
and use the  textMultiLine flag in the  inputType attribute instead for editable text views 
the inputType flags will override the value of singleLine

说的已经比较清楚了.之前没有认真看注解导致尝试了半天.

  1. 在textview中使用maxLines代替singleline的作用

  2. 在editTextView中,使用inputType来限制行数

    • inputType为text时单行显示,number,textpassword在类别上归属于textview,效果等同
    • inputType为textMultiLine才会多行显示
  3. inputType的效果会覆盖singleLine的效果.

因为inputType包含了singleLine,并且会覆盖singleLine的效果,所以singleLine估计才被定义为过时

分界线:本文完.

下面是我自己的验证(瞎折腾)过程


  1. 是不是inputType必须为text
    答:不是。当替换成number,textpassword时,也是没有换行的.

  2. 如果设置了inputType = text时可以单行显示了。那么默认的inputTextType是啥呢?
    答:直接看下源码,editTextView中没有看到,看父类TextView.可以看到默认值是EditorInfo.TYPE_NULL

  3. maxLines=1真的有效果吗?直接去掉.
    答:maxLines在editText中是无效的.之前没注意看注解,冤枉了maxLines

  4. 看到文档理解成maxLines是和textMultiLine共同使用才有作用的
    答:理解有误,请直接无视

  5. 验证猜想:如果设置了singleLine = true,同时设置textMultiline呢.
    答:注解中说的很清楚了.input会覆盖single.

闲说:之前一直不想写博客,因为觉得受限于第三方软件平台,笔记软件.
明明是自己的劳动成果,但是有一天平台限制了,自己辛辛苦苦写的博客想要导出或者保存却都不行.
但是自己却一直是个百度党,先感谢之前辈的无私分享.
所以决定,博客有空还是要写写的,自己本地也做个备份,尽可能避免成为平台的牺牲品.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值