【问题标题】:Alert user when EditText limit exceeded超出 EditText 限制时提醒用户
【发布时间】:2012-12-22 12:08:56
【问题描述】:

我想将 EditText 字段限制为 150 个字符,这很容易做到。但是,当用户尝试超过该限制时,我还需要通过键入(即第 151 个字符)或粘贴超过 150 个字符来提醒用户。

最好的方法是什么?

【问题讨论】:

    标签: android android-edittext android-alertdialog


    【解决方案1】:

    何必呢,只需将提示属性设置为“最多 150 个字符”即可

    android:hint="Max. 150 characters"
    

    【讨论】:

    • 感谢 GR8DAN,但不幸的是,要求需要警报。
    【解决方案2】:

    我看到了很多好的解决方案,但我想给出一个我认为更完整和用户友好的解决方案,其中包括:

    1,限制长度。 2,如果输入更多,给一个回调来触发你的吐司。 3,光标可以在中间或尾部。 4,用户可以通过粘贴字符串输入。 5、始终丢弃溢出输入并保持原点。

    这里:https://stackoverflow.com/a/46922794/2468360

    【讨论】:

      【解决方案3】:

      通过 EditText 的 addTextChangedListener() 方法添加一个 TextWatcher。只需为您的用例实施适当的方法。也许显示一个警告对话框?

      EditText text = (EditText) findViewById(R.id.text);
      text.addTextChangedListener(new TextWatcher()
      {
          @Override
          public void beforeTextChanged(CharSequence s, int start, int count, int after)
          {
              if (s.length() > n)
              {
                  new AlertDialog.Builder(MyActivity.this).setTitle("Character limit exceeded").setMessage("Input cannot exceed more than " + n + " characters.").setPositiveButton(android.R.string.ok, null).show();
              }
          }
      
          @Override
          public void afterTextChanged(Editable s)
          {
          }
      
          @Override
          public void onTextChanged(CharSequence s, int start, int before, int count)
          {
          }
      });
      

      【讨论】:

        【解决方案4】:

        这个属性最好把字符数限制在150以内,

        http://androidblogger.blogspot.com/2009/01/numeric-edittext-and-edittext-with-max.html

        android:maxLength="150"

        希望对你有帮助

        【讨论】:

        • 感谢 Ramesh,但不幸的是,要求需要警报。
        • @Serpentine Toast 消息怎么样?任何事情都可能比模式警报更好。 :P
        • 我同意,但我的双手被束缚了。 :)
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-04
        • 2012-09-18
        • 1970-01-01
        • 1970-01-01
        • 2015-10-20
        • 1970-01-01
        相关资源
        最近更新 更多