Articles of android edittext

迭代ListView并获取EditText-Field值

我创建了一个ListView(myList),每行有一个EditText-Field(R.id.mannschaften)。 在ListView下,我创建了一个Button,并在OnCreate() – Method中为它设置了一个OnClickListener。 现在,当单击Button时,我想遍历ListView并在每一行中获取EditText-Field的值并将它们保存在String-List中。 但是我该怎么做? 这是我的代码: private void ButtonClick() { /** get all values of the EditText-Fields */ View v; ArrayList mannschaftsnamen = new ArrayList(); EditText et; for (int i = 0; i < myList.getCount(); i++) { v = myList.getChildAt(i); et = (EditText) v.findViewById(R.id.mannschaften); mannschaftsnamen.add(et.getText().toString()); } ….. } 我已经知道,getChildAt仅适用于可见行,但我不知道如何以不同方式执行。

当键盘出现时,EditText失去焦点; 需要触摸两次才能编辑

我一直在设计一个包含可扩展列表的应用程序。 在每个列表的末尾,一个空的EditText已准备好接收注释。 我有以下问题; 当我触摸EditText ,屏幕稍微resize(不是问题,因为resize并不总是发生,这取决于我的布局和列表中的EditText的位置)并且出现软键盘。 但是,在这些事件期间, EditText失去焦点而不会重新获得它。 这是非常不方便的,因为没有焦点,尽管键盘可用,键盘的输入不会到达EditText 。 一旦我再次触摸它, EditText就会按预期运行。 它变得更加陌生。 键盘仍然显示,我可以触摸不同的EditText ,同样的情况发生; 它失去了焦点。 然而,一旦我通过了最初的焦点丢失,我可以在之前触摸的EditText之间自由移动而没有任何焦点相关的问题。 只有当我隐藏软键盘时,“状态”才会消失,我需要点击EditText两次才能编辑它们。 以下是我的代码的摘录。 首先, empty_comment.xml : 这里是我使用相关布局的片段的摘录: convertView = LayoutInflater.from(parent.getContext()).inflate(R.layout.comment_empty, null); final EditText editText = (EditText) convertView.findViewById(R.id.blank_box); editText.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if(actionId == EditorInfo.IME_ACTION_DONE) { // Unrelated code } return true; […]

在EditText中防止除英语之外的其他语言

我的Android应用程序有一个EditText字段,用户可以在其中输入。 但现在我希望用户不能提供输入其他(即日语,连锁店)而不是英语。

如何在edittext中了解按键

我需要检测EditText软键盘或硬键盘上的每个按键。 我只需要在按下时一次发送一个字符,不需要最终的文本字符串。 我尝试过使用带有onkeypress的EditText ,但是在这里遇到了问题而没有使用软键盘进行按键操作。 和textwatcher不是一个好选择,因为我需要每次按键。 是否有任何解决方案可以知道所有的按键(包括后退,移位,输入……)

如果我应用背景,如何在EditText上返回默认样式?

我刚遇到一个我不知道如何解决的问题。 它看起来很傻但我找不到解决方法。 我在android中有一个带有几个EditText的表单,当你提交表单时,它检查那些EditText,如果他们有错误的数据,我将EditText更改为红色边框(应用9patch图像)。 myEditText.setBackgroundResource(R.drawable.edittext_red); 问题是,我想在用户更改EditText时恢复android的默认样式,但我不知道该怎么做。 如果我做: myEditText.setBackgroundResource(0); 它只会删除所有内容,而这不是我想要的。 谢谢!

TextInputLayout和EditText双提示问题

我想在EditText(在TextInputLayout中)中使用java设置提示。 用于设置提示的代码: aET = (EditText) findViewById(R.id.aET); aET.setHint(“h?”); 但是即使在关注edittext时,Hint也会显示两次(也在edittext内)。 如果有人面对并find一些解决方法,请告诉我 当editText聚焦时…… 当editText没有集中时.. 编辑[2015年7月10日]:

在ListActivity中编辑文本ListView在键盘出现时失去焦点

我搜索并搜索了这个问题的答案,看起来像答案的一切都没有用,所以我想我会问。 我有一些EditText框添加到ListView ,它是ListActivity的基础。 当我将windowSoftInputMode设置为adjustPan并单击EditText它会一直工作,直到再次单击它然后键盘覆盖它。 当我使用adjustResize它会工作,除非键盘出现时EditText失去焦点,我必须再次点击它来键入。 我试图弄清楚如何捕获onResize但这似乎与View而不是活动有关,我不完全确定如何倾听它。 我还尝试了EditText框和ListView本身上的各种可聚焦设置(正如我读过的其他post中所建议的那样)似乎也没有帮助。

仅限键盘编号的EditText视图

我想要一个只有可见数字的键盘到EditText视图。 没有任何其他角色。 我已经测试了所有可用的输入并且不起作用。 我已经搜索了一种只使用数字键盘的方法,但我只看到过引用: android: inputType = “numberPassword” 但我想在EditText中看到可见的数字。 有人可以帮帮我吗? 我想要一个这样的键盘:(numberPassword) 我尝试过: android:digits=”0123456789″ android:inputType=”phone” 和 android:inputType=”number” 并且看起来像那样:

onEditorAction()中的null keyevent和actionid = 0(Jelly Bean / Nexus 7)

我有一个编辑文本,在我的应用程序中用作搜索框。 在我的Nexus 7上的Jelly Bean中,当我在正在监听的文本框中输入内容并点击时,输入KeyEvent = null和ActionId = 0传递给onEditorAction()方法。 有人遇到过这种情况么? 我在想它可能是一个bug。 在下面的第二个if语句中,我得到一个空指针,因为actionId = 0和KeyEvent = null; // Search field logic. @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { Log.d(TAG, “onEditorAction”); if (event != null && event.getAction() != KeyEvent.ACTION_DOWN) return false; if (actionId == EditorInfo.IME_ACTION_SEARCH || event.getKeyCode() == KeyEvent.KEYCODE_ENTER) { …..Do some stuff(); } }

如何从EditText获取文本?

问题很简单。 但我想知道我们究竟在哪里引用gui元素? 至于哪个是定义的最佳位置: final EditText edit = (EditText) findViewById(R.id.text_xyz); edit.getText().toString(); 当我在默认的onCreate()内部尝试时,我得到空值。 因此,对于最佳实践,您是否建议使用单独的类来引用main.xml中已定义的gui元素。 从这里我们可以调用这些元素的各种方法,如gettext或settext?