关于android 联系人 编辑界面限制姓名长度的问题!

leemeng0x61 2012-07-06 09:55:36
目前要对联系人编辑界面的人名(包括8项First Middle等)做长度限制,需要在输入时进行,超过指定长度输入就无效(如果限定长度为9,那么就是在EditText里面最多输入9个字符,再输入EditText不会增加10个字符)。

请教大家有没有好的方法!我这里对字符设置后无法成功

修改文件 GenericEditorView.java 方法 setValues 里面
fieldView.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
if(s.toString.length()>9){
String temp = s.toString.substring(0,9);
//此处如何设置temp
//fieldView.setText(temp); //此处不可以,如何解决??
onFieldChanged(column, s.toString());

...全文
539 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
fredavid 2012-07-07
  • 打赏
  • 举报
回复
和我做的有点像。只是我是对创建在SIM卡上的联系人的名字长度做了限定。
leemeng0x61 2012-07-06
  • 打赏
  • 举报
回复
fieldView.setText(temp);
执行会报堆栈错误java.lang.StackOverflowError
leemeng0x61 2012-07-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

xml不行那就 textwatcher
[/Quote]

请仔细看看代码,上面已经有textwatcher。

问题在于fileview无法将修改的值再写入,即名字在超过9个字符之后还可以输入
aSysBang 2012-07-06
  • 打赏
  • 举报
回复
xml不行那就 textwatcher
leemeng0x61 2012-07-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

xml 里面有属性
[/Quote]
该fieldView是一个共用EditText,xml属性设置,会影响其他设置EditText,具体请看下代码,添加联系人界面的所有EditText都是这个fieldView。
aSysBang 2012-07-06
  • 打赏
  • 举报
回复
xml 里面有属性
leemeng0x61 2012-07-06
  • 打赏
  • 举报
回复
问题已解决,由于涉及EditText较多要做vnd.android.cursor.item/name的限制
ldoublem 2012-07-06
  • 打赏
  • 举报
回复
不要把temp 设置局部变量,在这个事件外面setText(temp)

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧