- 浏览: 273283 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
zwnJava:
谢谢,总算找到了句有应的话
Android监听程序的安装和卸载 -
liangoogle:
就是只让edittext输入这些字符。
EditText 只输入英文和特殊字符 -
huibin147852369:
应该讲解一下!
EditText 只输入英文和特殊字符 -
goingshow:
楼主,是否发现 自定义selector 出来的chekbox ...
Android 自定义CheckBox 样式 -
shadow88:
这个方法是不错,但是如果是由多个组件组合,只有这个获得了焦点, ...
TextView 跑马灯效果
android:numeric="integer" 只允许输入整数
android:numeric="true" 这条可以让输入法自动变为数字输入键盘,同时仅允许0-9的数字输入
android:digits="1234567890qwertyuiopasdfghjklzxcvbnm_" 如果输入中文是不会显示
android:hint="请输入数字!" 设置显示在空间上的提示信息
android:singleLine="true" 设置单行输入,一旦设置为true,则文字不会自动换行。
android:password="true" 设置只能输入密码
android:textStyle="bold"
android:capitalize = "characters" 以大写字母写
android:textScaleX="1.5" 控制字与字之间的间距
android:typeface="monospace" 字型,normal, sans, serif, monospace
android:background="@null" 空间背景,这里没有,指透明
android:editable="false" 设置EditText不可编辑
android:ellipsize="end" 自动隐藏尾部溢出数据,一般用于文字内容过长一行无法全部显示时
1. 设定 EditText 的滚动条、对齐方式、行数、和提示 (hint) 及其颜色
在布局文件,比如 main.xml 中,增加
< EditText
android:id = "@+id/EditText01"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:hint = "type something here... 请输入 ..." // 输入提示
android:textColorHint = "#FF00FF" // 提示文字的颜色
android:lines = "4" // 行数
android:gravity = "top" // 上对齐
android:scrollbars = "vertical" // 垂直滚动条
/>
在 Activity 对应的 Java 文件中,指定包含上述代码的 Layout( 即 main.xml) :
setContentView(R.layout. main );
得到的结果如下:
2. 设定 EditText 中的文字大小、文字颜色和 EditText 的背景颜色
在布局文件中,增加类似如下代码:
< EditText
android:id = "@+id/EditText02"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:textSize = "50sp"
android:textColor = "#FF0000"
android:background = "#007F00"
/>
得到的结果如下:
3. 输入过滤器的使用 (Input Filter)
输入过滤器,可以用来规范在 EditText 中输入的内容。比如:
EditText txt02 = (EditText)findViewById(R.id. EditText02 );
txt02.setFilters( new InputFilter[]
{
new InputFilter.AllCaps(),
new InputFilter.LengthFilter(2)
});
则 txt02 这个 EditText 最多接收 2 个字符 ( 或者中文字 ) ,并且会自动转换为大写。
程序员可以自己定义 InputFilter ,类似的代码如下 ( 必须重写 InputFilter 接口中定义的 filter 方法 ) :
class CustomizedInputFilter implements InputFilter
{
public CharSequence filter(CharSequence source, int start, int end,
Spanned dest, int dstart, int dend)
{
// Log.e("debug", (String)source);
// return (new String((String)source).toUpperCase());
// 下面是 InputFilter.AllCaps() 的源代码
for ( int i = start; i < end; i++)
{
if (Character.isLowerCase (source.charAt(i)))
{
char [] v = new char [end - start];
TextUtils.getChars (source, start, end, v, 0);
String s = new String(v).toUpperCase();
if (source instanceof Spanned)
{
SpannableString sp = new SpannableString(s);
TextUtils.copySpansFrom ((Spanned) source, start, end, null , sp, 0);
return sp;
}
else
{
return s;
}
}
}
return null ; // keep original
}
}
4. 指定 EditText 为密码输入框和设定 EditText 激活状态
< EditText
android:id = "@+id/EditText03"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:password = "true" // 密码输入框,会屏蔽输入的字符
/>
< EditText
android:id = "@+id/EditText04"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:enabled = "false" // 设定活动状态为 false ,既不能编辑,也不能
/> // focusable
具体效果就不演示了。
5. AutoCompleteTextView 的使用
AutoCompleteTextView 可以被认为是一种特殊的 EditText ,用户在 AutoCompleteTextView 中输入部分字符,就会得到和该输入字符匹配的列表,该列表由开发人员事先提供,用户只需要选择其中之一即可,这样可以节省用户输入的字符数,同时也可以减少出错的机会。比如,在布局文件 main.xml 中,有如下代码:
< AutoCompleteTextView
android:id = "@+id/AutoCompleteTextView01"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:completionHint = "Pick a country or type your own" // 下拉列表的提示
android:dropDownHeight = "120px" // 下拉列表的高度
android:completionThreshold = "1" // 键入多少字符,即可出现下拉列表
/>
在 Activity 对应的 java 文件中:
public class ControlEditText extends Activity
{
// 定义一个字符串数组
final String[] COUNTRIES = { "China" , "Cuba" , "Costa Rica" ,
"Columbia" , "Canada" , "America" ,
"Africa" , "Belgium" , "India" };
@Override
public void onCreate(Bundle savedInstanceState)
{
super .onCreate(savedInstanceState);
setContentView(R.layout. main );
// 构建一个 ArrayAdapter 对象
ArrayAdapter<String> adapter = new ArrayAdapter<String>( this ,
android.R.layout. simple_dropdown_item_1line ,
COUNTRIES );
// 获取 AutoCompleteTextView 对象 text
AutoCompleteTextView text = (AutoCompleteTextView)findViewById(R.id. AutoCompleteTextView01 );
// 给 text 指定 ArrayAdapter 对象
text.setAdapter(adapter);
}
}
其中用到的 ArrayAdapter 构造方法说明如下:
public ArrayAdapter ( Context context, int textViewResourceId, T[] objects)
Parameters
context |
The current context. |
textViewResourceId |
The resource ID for a layout file containing a TextView to use when instantiating views. |
在 android.R.layout 包下,定义了许多诸如 simple_dropdown_item_1line 这样的 TextView 资源ID |
|
objects |
The objects to represent in the ListView. |
运行代码,得到的结果如下:
输入一个字符 c ,则 adapter 中所有以 c( 缺省地,不区分大小写 ) 大头的国家,会全部显示在下拉列表中,用户仅需要做一个简单的选择就可以了。如果 android:completionThreshold 的属性为 "2" ,那么用户需要输入两个字符,下拉列表才会出现。
选择输入完成后,用户可以继续在上面的 EditText 中继续输入。
6. MultiAutoCompleteTextView 的使用
MultiAutoCompleteTextView 也可以被认为是一种特殊的 EditText ,它的作用基本上和 AutoCompleteTextView 一样:用户在MultiAutoCompleteTextView 中输入部分字符,就会得到和该输入字符匹配的列表,该列表由开发人员事先提供,用户只需要选择其中之一即可,这样可以节省用户输入的字符数,同时也可以减少出错的机会。
它和 AutoCompleteTextView 唯一不同的地方就是: AutoCompleteTextView 只有第一个输入的单词可以 auto complete ,而MultiAutoCompleteTextView ,则可以多次进行 auto complete 。在使用 MultiAutoCompleteTextView 的时候,要提供tokenizer , tokenizer 用于分隔单词。比如,在布局文件 main.xml 中,有如下代码:
< MultiAutoCompleteTextView
android:id = "@+id/MultiAutoCompleteTextView01"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:completionHint = "Pick a country or type your own"
android:dropDownHeight = "120px"
android:completionThreshold = "1"
/>
在 Activity 对应的 java 文件中:
public class ControlEditText extends Activity
{
final String[] COUNTRIES = { "China" , "Cuba" , "Costa Rica" ,
"Columbia" , "Chizen" , "Canada" , "America" ,
"Africa" , "Belgium" , "India" };
@Override
public void onCreate(Bundle savedInstanceState)
{
super .onCreate(savedInstanceState);
setContentView(R.layout. main );
ArrayAdapter<String> adapter = new ArrayAdapter<String>( this ,
android.R.layout. simple_dropdown_item_1line ,
COUNTRIES );
AutoCompleteTextView text = (AutoCompleteTextView)findViewById(R.id. AutoCompleteTextView01 );
text.setAdapter(adapter);
// 获取 MultiAutoCompleteTextView 对象 text
MultiAutoCompleteTextView mtext =
(MultiAutoCompleteTextView)findViewById(R.id. MultiAutoCompleteTextView01 );
// 依然使用前面构造好的 ArrayAdapter 对象
mtext.setAdapter(adapter);
// 指定分隔符 ”,”
mtext.setTokenizer( new MultiAutoCompleteTextView.CommaTokenizer());
}
}
结果如下:
我们可以看到,输入 c ,然后可以在下拉列表中选择 China ,会自动增加一个分隔符。此时,输入 a ,则会把和 a 匹配的America 以及 Africa 显示在下拉列表中。
如果我们把 COUNTRIES 数组中的内容改为中文:
final String[] COUNTRIES = { " 印度 " , " 印度尼西亚 " , " 新加坡 " ,
" 新赤道几内亚 " , " 巴基斯坦 " , " 南非 " , " 南斯拉夫 " ,
" 北非 " , " 北爱尔兰 " , " 巴勒斯坦 " };
可以看到, AutoCompleteTextView 和 MultiAutoCompleteTextView 都支持中文:
发表评论
-
android attr.xml 怎么在主工程中设置library项目中背景或者其他一些属性。
2013-04-16 19:38 2127怎么在主工程中设置library项目中背景或者其他一些属性 ... -
android 中theme.xml与style.xml的区别
2013-04-16 19:03 4387android 中theme.xml与style.xml的 ... -
android 键盘 搜索键
2013-04-15 16:52 2200想让软键盘上的enter键显示搜索图标: ... -
在一个按钮正下方显示一个popwindow
2012-11-06 23:48 5222//这是show一个PopupWindow P ... -
app widget 进入主客户端代码。
2012-04-25 16:56 1464做widget : 想点击widget一个按钮时就进入客户端 ... -
自实现listview 添加滑动监听
2012-04-10 17:58 0public interface OnScroll ... -
acitvitygroup edittext 软盘弹出时 底部菜单挤压到上面的问题
2012-03-31 17:28 1501userName = (EditText) layout. ... -
widget
2012-03-13 14:26 6961:在清单注册: <receiver ... -
wifi 通知栏上 选择程序时出现你的应用
2012-02-08 10:06 1202<activity android:co ... -
让软盘消失和出现
2012-02-07 18:28 1223在程序中加入以下代码时,软键盘会出现: Inpu ... -
按两次back键返回
2012-02-07 16:45 1025Java代码 private long ... -
创建桌面快捷方式
2012-02-07 14:49 1133本文时在activity中创建桌面快捷方式: p ... -
根据图片名字 读取图片
2012-01-17 17:57 953根据图片名字 读取图片 int id_up = co ... -
关于tableactivity 中activitygroup 使用spinner 控件报错
2012-01-14 11:05 1292这个就和显示dialog一样的道理,都要使用父类显示: 解决 ... -
获取控件坐标
2011-10-10 18:00 928int[] location = new locati ... -
密码长度 太短了提示
2011-07-14 14:38 1215第一种方法: final EditText ... -
EditText 只输入英文和特殊字符
2011-07-14 11:15 2077android:digits="1234567890 ... -
XML 转义字符
2011-07-14 11:14 1135XML 转义字符 随笔记录 XML X ... -
制作一个透明的LinearLayout
2011-07-08 16:56 6978在ListView的最下方加上一个透明的背景按钮或者布局: ... -
自定义radiobutton的样式
2011-07-08 13:21 1379在res/drawable新建radiobutton.xml如 ...
相关推荐
EditText文字输入飞入效果.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
实现 EditText 输入文字之后格式正确性认证功能.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
自定义固定头文字的多行文本编辑框.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
一个基于Android原生的EditText的富文本组件,支持文字输入,可以插入图片.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
自定义Editext控制输入字数限制的文本框...例如发送短信一样,当我们输入文字时,会提示一个还可以在输入多少字 的一个小功能.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
实现 EditText 输入文字之后格式正确性认证功能。如果输入格式不符合,将弹出错误提示。支持日期、信用卡、邮箱、姓名、IP地址、网址、电话、数字等等十几种输入格式验证。开发者也能自定义格式验证规则。 测试...
输入框一键删除内容。两种方法实现.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
D-左边图片的文本框,当文字输入时改变图片,模仿微博登录框.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
实现 EditText 输入文字之后格式正确性认证功能。如果输入格式不符合,将弹出错误提示。支持日期、信用卡、邮箱、姓名、IP地址、网址、电话、数字等等十几种输入格式验证。开发者也能自定义格式验证规则。
实现 EditText 输入文字之后格式正确性认证功能。如果输入格式不符合,将弹出错误提示。支持日期、信用卡、邮箱、姓名、IP地址、网址、电话、数字等等十几种输入格式验证。开发者也能自定义格式验证规则。
ZUILib控件简介。一系列的Dialog,包括Alert,Confirm, 单选, 多选, Menu, 日期选择,进度条、异步进度条等。...ZSlideVerifyView滑动验证控件。ZTagLayout便签布局控件。ZTextSwitcher文字轮播控件。ZoomImage
源码FormEditText Library Example,实现 EditText 输入文字之后格式正确性认证功能。如果输入格式不符合,将弹出错误提示。支持日期、信用卡、邮箱、姓名、IP地址、网址、电话、数字等等十几种输入格式验证。开发者...
4.1 EditText与TextView共舞——setOnKeyListener事件 4.2 设计具有背景图的按钮——ImageButton的焦点及事件处理 4.3 给耶诞老人的信息——Toast对象的使用 4.4 我同意条款——CheckBox的isChecked属性 4.5 消费券...
4.1 EditText与TextView共舞——setOnKeyListener事件 4.2 设计具有背景图的按钮——ImageButton的焦点及事件处理 4.3 给耶诞老人的信息——Toast对象的使用 4.4 我同意条款——CheckBox的isChecked属性 4.5 消费券...
4.1 EditText与TextView共舞 4.2 设计具有背景图的按钮 4.3 给圣诞老人的信息 4.4 我同意条款 4.5 消费券采购列表 4.6 向左或向右 4.7 专业相框设计 4.8 自定义下拉...
4.1 EditText与TextView共舞——setOnKeyListener事件 4.2 设计具有背景图的按钮——ImageButton的焦点及事件处理 4.3 给耶诞老人的信息——Toast对象的使用 4.4 我同意条款——CheckBox的isChecked属性 4.5 消费券...
4.1 EditText与TextView共舞——setOnKeyListener事件 4.2 设计具有背景图的按钮——ImageButton的焦点及事件处理 4.3 给耶诞老人的信息——Toast对象的使用 4.4 我同意条款——CheckBox的isChecked属性 4.5 消费券...
——具选择功能的对话框 3.21 Android变脸——主题(Theme)实现 第4章 史上超豪华的手机控件 4.1 EditText与TextView共舞——setOnKeyListener事件 4.2 设计具有背景图的按钮——ImageButton的焦点及事件处理 4.3 给...
4.1 EditText与TextView共舞——setOnKeyListener事件 4.2 设计具有背景图的按钮——ImageButton的焦点及事件处理 4.3 给耶诞老人的信息——Toast对象的使用 4.4 我同意条款——CheckBox的isChecked属性 4.5 ...