当前位置: 首页 > 知识库问答 >
问题:

如何允许EditText中的第一个数字是零(Android)

阴禄
2023-03-14

我有一个EditText,供用户输入电话号码,稍后会保存到sharedpreferences。但如果第一个数字是0,EditText似乎会删除它,我不希望这样。如何允许第一个数字为0?我尝试过使用android:digits=“0123456789”、android:inputType=“phone”和android:inputType=“number”。XML:

       <EditText
    android:id="@+id/etAnnonsNr"
    android:layout_width="fill_parent"
    android:layout_height="25sp"
    android:layout_alignLeft="@+id/etAnnonsText"
    android:layout_below="@+id/etAnnonsText"
    android:layout_marginTop="15dp"
    android:background="@drawable/boxboarder"
    android:nextFocusDown="@+id/etAnnonsPris"
    android:hint="Ditt telefonnummer"
    android:inputType="number" />

Java:

最终编辑文本 etAnnonsNr = (EditText)findViewById(R.id.etAnnonsNr);

if (etAnnonsNr.getText().toString().matches("")){
                editor.putInt("AnnonsNr", 0);
            }else{
                editor.putInt("AnnonsNr", Integer.parseInt(etAnnonsNr.getText().toString()));
            }
editor.commit();

共有3个答案

翟善
2023-03-14

将您的no存储为字符串,即putString而不是putInt,并且在回退数字时只需将字符串解析为int。就是这样

丌官信厚
2023-03-14

将您的android: inputType="number"更改为android: inputType="phone"。不要解析整数

廖君昊
2023-03-14

虽然我没有完全明白这个问题,但是如果您在任何地方使用整数,请使用Strings而不是intger。也可以使用editor.putString而不是editor.putInt。当您想将保存在SharedPresion中的值用作整数时,将值从字符串转换回整数。这可能有助于保留0

 类似资料:
  • 因此,我在Rails中的模型的ElasticSearch关注中有以下模块。 这是有效的,但是如何使每个bool查询(must、must_not、filter)接受或空参数呢? 假设我传递一个空的,它将获得所有文档。然后,当我传递一个空的参数时,它将返回所有大小。

  • 代码: 正如我在帖子标题中所问的那样,我在我正在构建的应用程序中删除该EditText字段中第一个字母的自动大写时遇到问题(我已经查看了这个,这个和这个,但它们都没有解决我的问题) 提前感谢:)

  • 我一直在捕捉非数字时遇到问题。 我试过了,但抓不住。如果我让它捕获非数字,但不让用户再次尝试输入。。。它完全停止了我的代码。 这是我的密码:

  • 我正在使用ApachePDFBOx2.0.8并试图删除一个字段。但是找不到这样做的方法,就像我可以用iText:。 我要做的事情。最初,我有3个数字签名的模板PDF。在某些情况下,我只需要2个签名,所以在这种情况下,我需要从模板中删除第三个签名。看起来我不能用PDFBox做这件事,我发现的是扁平化这个字段,但问题是如果一个扁平化的特定PDField(不是整个表单,而是一个字段)-所有其他签名都失去

  • 问题内容: 如您所见,当我使用时,键为“ 1”的成员将被覆盖 有什么办法可以将其作为python中的异常捕获,说在客户端的请求中找到重复的键? 问题答案: 媒体类型的rfc 4627 建议使用唯一键,但不会明确禁止它们: 对象中的名称应唯一。 从rfc 2119开始: 应该使用 这个词或形容词“推荐”,这意味着 在特定情况下可能存在忽略 特定项目的正当理由,但是 在选择其他方法之前,必须理解并仔细

  • 问题内容: 如何只允许在数字中使用而已? 问题答案: 基本思想是: 使用受控组件(使用值和输入字段的onChange属性),并在onChange句柄内部检查输入的值是否为正确的数字。仅当输入的值是有效数字时才更新状态。 为此使用此 正则表达式 : onChange处理程序将为: 工作示例: