eSWT 移动扩展简介,第 2 部分: 在移动应用程序中使用高级控件
2010-03-17 00:00:00 来源:WEB开发网查看原图(大图)
TextExtension
包含一些方法,以扩展文本控件的功能。这些函数专用于非全键盘设备。当 TextExtension 获得焦点时,应用程序可以请求某些文本输入模式。有效的输入模式考虑两个样式方面:一个基于内容语义,另一个基于内容字符集。
TextExtension
TextExtension 的编辑行为和外观与文本控件一样。不同的是,TextExtension 便于切换初始输入模式,例如启用/禁用预测输入;改变初始大小写样式;以及切换一些语言的输入模式。用户在编辑期间可以改变初始的输入模式。在应用程序生命周期中,模式是否能持久依赖于实现。
可以使用以下修饰符样式标识输入模式。
NON_PREDICTIVE提示关闭可能的预测文本输入。默认情况下,任何可用的预测输入功能都应该打开。LATIN_INPUT_ONLY强制启用特定于地区的输入模式。在某些情况下,只允许输入拉丁字符,例如密码框,这时可以使用这种样式。
可以使用大小写修饰符(特有)标识不同的大小写模式。
UPPERCASE字体大写LOWERCASE字体小写,与大写相反TEXTCASE每个句子的第一个单词大写。句子结束的判定依赖于实现TITLECASE每个单词都大写
清单 4 中的代码示例创建 4 种类型的 TextExtension。
清单 4. TextExtension 示例
TextExtension te1 = new TextExtension(shell,SWT.BORDER,TextExtension.EMAILADDRESS);
te1.setInitialInputMode(TextExtension.UPPERCASE, "UCB_BASIC_LATIN");
te1.setBounds(new Rectangle(0,0,200,30));
TextExtension te2 = new TextExtension(shell,SWT.BORDER,TextExtension.URL);
te2.setInitialInputMode(TextExtension.LOWERCASE, "UCB_BASIC_LATIN");
te2.setBounds(new Rectangle(0,40,200,30));
TextExtension te3 = new TextExtension(shell,SWT.BORDER,TextExtension.NON_PREDICTIVE);
te3.setInitialInputMode(TextExtension.TEXTCASE, null);
te3.setBounds(new Rectangle(0,80,200,30));
TextExtension te4 = new TextExtension(shell,SWT.BORDER,TextExtension.LATIN_INPUT_ONLY);
te4.setInitialInputMode(TextExtension.TITLECASE, "IS_FULLWIDTH_LATIN");
te4.setBounds(new Rectangle(0,120,200,30));
- ››移动用户体验设计:iOS APP体验设计
- ››移动互联网十大战争二:Android与WM之争
- ››扩展Axis2框架,支持基于JVM的脚本语言
- ››扩展WebSphere Portal V6个性化功能
- ››扩展JavaScript的时候,千万要保留其原来的所有功...
- ››移动游戏市场收入8.5亿美元 iOS受热捧
- ››扩展数据:如何为 Model 750 服务器选择 I/O 扩展...
- ››扩展 JDT 实现自动代码注释与格式化
- ››扩展 secldap 的功能以验证多个数据源
- ››移动存储安全
- ››扩展 JUnit4 以促进测试驱动开发
- ››移动市场报告:HTC与MOTO领衔Android
更多精彩
赞助商链接