我正在做一个计算器.所以我Buttons用数字和函数做了我自己的.必须计算的表达式是在一个EditText,因为我希望用户也可以在表达式的中间添加数字或函数,所以EditText我有cursor.但我想Keyboard在用户点击时禁用EditText.我发现这个例子可以Android 2.3,但是ICS禁用Keyboard了光标和光标.
public class NoImeEditText extends EditText {
public NoImeEditText(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onCheckIsTextEditor() {
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
然后我NoImeEditText在我的XML文件中使用它
<com.my.package.NoImeEditText
android:id="@+id/etMy"
....
/>
Run Code Online (Sandbox Code Playgroud)
如何使这个EditText与ICS兼容??? 谢谢.
keyboard android android-edittext android-4.0-ice-cream-sandwich
我想EdiText在弹出窗口中显示所有字段的验证错误,如下图所示:

据我所知,Android有drawables:
1)popup_inline_error.9.png

2)popup_inline_error_above.9.png

3)indicator_input_error.png

我可以EditText使用以下方法在右侧显示红色错误指示器:
Drawable err_indiactor = getResources().getDrawable(R.drawable.indicator_input_error);
mEdiText.setCompoundDrawablesWithIntrinsicBounds(null, null, err_indiactor, null);
Run Code Online (Sandbox Code Playgroud)
现在我也想显示错误信息,如图所示是第一张图片,但似乎我对此没有任何想法,虽然我认为它应该是自定义Toast.
如何限制EditText只接受字母数字字符,小写和大写字符在EditText?中显示为大写?
<EditText
android:id="@+id/userInput"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="textMultiLine"
android:minLines="3" >
<requestFocus />
</EditText>
Run Code Online (Sandbox Code Playgroud)
如果用户键入小写的"abcd",EditText则应自动显示大写"ABCD"而无需将键盘限制为大写.
我正面临一个问题,我在活动上有用户名和密码字段,现在当我点击用户名键盘时出现但没有下一个按钮,我无法通过键盘移动到下一个Edittext控件,在这种情况下,键盘显示输入按钮作为附在屏幕截图中,增加其高度,
任何人都可以指导我这个问题的解决方案是什么(在edittext上显示下一个按钮)?

我的守则
txtUserid = (EditText)findViewById(R.id.txtUserID);
txtUserPasword = (EditText)findViewById(R.id.txtPassword);
txtUserid.setNextFocusDownId(R.id.txtPassword);
txtUserPasword.setNextFocusDownId(R.id.btnLogin);
Run Code Online (Sandbox Code Playgroud) 我正在使用EditText过滤我的列表.我想在用户输入EditText后0.5秒过滤列表.我为此目的使用了这个afterTextChanged事件TextWatcher.但是,对于EditText中的每个字符更改,此事件都会增加.
我该怎么办?
我有一个编辑文本:
<LinearLayout android:id="@+id/linearLayout7" android:layout_width="match_parent" android:layout_height="wrap_content">
<EditText android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_weight="1" android:id="@+id/editText1" android:text="3">
<requestFocus></requestFocus>
</EditText>
<Button android:text="Button" android:layout_height="wrap_content" android:layout_width="wrap_content" android:id="@+id/button2"></Button>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
然后是其他一些东西
我遇到的问题是,当应用程序启动时焦点在输入上,我不希望在应用程序启动时焦点在输入上.
我试过删除
<requestFocus></requestFocus>
Run Code Online (Sandbox Code Playgroud)
事情,它没有做任何事情.
我想通过按下按钮将常量字符串插入EditText.该字符串应插入EditText中的当前位置.如果我使用EditText.append文本在EditText的末尾插入.
我怎样才能做到这一点?我找不到合适的方法.
我知道这似乎已经解决了一千次,但我找不到任何对我有用的东西.
我在Android上有一个MultiLine EditText,通过"播放"权重(1)和高度(0dip)来适应视图大小.我使用重力"顶部"但它从中间开始.
我猜这个问题与体重有关.这是代码(父代是LinearLayout):
<EditText
android:id="@+id/txtContacto"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_gravity="top"
android:inputType="textMultiLine"
android:weight="1">
</EditText>
Run Code Online (Sandbox Code Playgroud) 在网上我看到的例子如edittext.getText().toString().我没有看到任何空检查.在文档中,我没有看到任何声明,它永远不会为空.
不过,观察结果表明了什么; 这是否会返回null?
android ×10
android-edittext ×10
validation ×2
android-4.0-ice-cream-sandwich ×1
autofocus ×1
filter ×1
insert ×1
keyboard ×1
popup ×1
textchanged ×1
textwatcher ×1