实验设备为HTC hero (SDK 2.1-update1)
使用的layout文件内容如下:
<EditText
android:id="@+id/edt_url"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:text=""
android:singleLine="true"
android:ellipsize="none"
android:editable="false"
android:inputType="none"
/>
其中,属性android:ellipsize默认为“end”(Google的文档中未说明),即省略掉内容的后半部分;把它置为“none”,且置属性android:singleline为true,不用设置横向滚动,即可实现文字在只读EdiText中的滚动。
另,对于只读EditText是不需要显示软键盘的。以下代码实现隐藏软键盘:
private void hideIM(View edt){
// try to hide input_method:
try {
InputMethodManager im = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
IBinder windowToken = edt.getWindowToken();
if(windowToken != null) {
// always de-activate IM
im.hideSoftInputFromWindow(windowToken, 0);
}
} catch (Exception e) {
Log.e("HideInputMethod", "failed:"+e.getMessage());
}
}
private OnFocusChangeListener focus_listener_noIM = new OnFocusChangeListener(){
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus==true) {
hideIM(v);
}
}
};
private OnTouchListener touch_listener_noIM = new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction()==MotionEvent.ACTION_DOWN) {
hideIM(v);
}
return false; // dispatch the event further!
}
};
// 以下是Activity的onCreate()函数的片断:
public void onCreate(Bundle savedInstanceState) {
...
EditText edt_url = (EditText)findViewById(R.id.edt_url);
edt_url.setOnFocusChangeListener(focus_listener_noIM);
edt_url.setOnTouchListener(touch_listener_noIM);
...
}
分享到:
相关推荐
Android:利用EditText和ListView_实现动态信息检索
android EditText禁止输入法表情,完美解决表情不能屏蔽的情况,不存在个别表情屏蔽不了的情况,不明白的地方可以参考我的博客。
android+滚动Edittextandroid+滚动Edittextandroid+滚动Edittextandroid+滚动Edittextandroid+滚动Edittextandroid+滚动Edittextandroid+滚动Edittextandroid+滚动Edittextandroid+滚动Edittextandroid+滚动Edittext
点击EditText后禁止弹出输入法,看了网上很多写法都不太理想,还是看看官方是怎么写的吧该代码摘录于4.4拨号盘源码: 重写EditText.的onTouchEvent
在EditText中输入信息,然后根据EditText中输入的信息再进行查找,将在ListView中显示查找结果,在LisTView中可以选择一项输入到EditText中。
一、Android EditText默认不弹出输入法的办法: 1. 在AndroidManifest.xml中将需要默认隐藏键盘的Activity中添加属性即可(常用此方法) android:windowSoftInputMode=adjustUnspecified|stateHidden android:...
android:privateImeOptions设置输入法选项,此处无用,在EditText将进一步讨论。 android:scrollHorizontally设置文本超出TextView的宽度的情况下,是否出现横拉条。 android:selectAllOnFocus如果文本是可...
android 实现点击edittext的“小眼睛”切换明密文
EditText禁止粘贴内容输入,修改粘贴内容, 参考: 禁止EditText 输入粘贴版内容 http://blog.csdn.net/xiaobijia/article/details/41081595
常用控件:TextView EditText Button 项目文件
android edittext不弹出软键盘三种方法“: 方法一: 在AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为adjustUnspecified|stateHidden 例如: <activity android:name=".Main" android:...
本文实例讲述了Android实现EditText控件禁止输入内容的方法。分享给大家供大家参考,具体如下: 问题: android如何实现EditText控件禁止往里面输入内容? 修改版解决方法: EditText editText = (EditText) ...
主要介绍了Android实现EditText内容保存为Bitmap的方法,涉及Android中saveBitmap方法的简单使用技巧,需要的朋友可以参考下
根据EditText内容的变化,自动追加TextView,可以不用适配二者之间的间距
长按删除按钮,不断删除EditText中内容
Android动态添加EditText,并且可设置其背景Demo(编辑工具:Android Studio)
android 输入框EditText禁止输入Emoji表情符,博客地址:http://blog.csdn.net/elsdnwn/article/details/45390771
Android开发之EditText字符串过滤器InputFilter
(EditText内容分不同块显示,支持校验,删除块,添加块,得到块代表的字符串集合) 预览效果: 代码中实现: 1.继承CloudEditText覆写checkInputSpan实现校验(不需校验可以省略本步) public class ...