【Android常用控件】EditText常用属性【二】:为文本输入框指定软键盘类型和软键盘回车键图标设置

来源:互联网 发布:成都java培训班 编辑:程序博客网 时间:2024/05/21 00:47


【一】为文本输入框指定软键盘类型


【扩展阅读】android:inputType参数类型说明

[html] view plaincopy
  1. android:inputType="none"--输入普通字符  
  2. android:inputType="text"--输入普通字符  
  3. android:inputType="textCapCharacters"--输入普通字符  
  4. android:inputType="textCapWords"--单词首字母大小  
  5. android:inputType="textCapSentences"--仅第一个字母大小  
  6. android:inputType="textAutoCorrect"--前两个自动完成  
  7. android:inputType="textAutoComplete"--前两个自动完成  
  8. android:inputType="textMultiLine"--多行输入  
  9. android:inputType="textImeMultiLine"--输入法多行(不一定支持)  
  10. android:inputType="textNoSuggestions"--不提示  
  11. android:inputType="textUri"--URI格式  
  12. android:inputType="textEmailAddress"--电子邮件地址格式  
  13. android:inputType="textEmailSubject"--邮件主题格式  
  14. android:inputType="textShortMessage"--短消息格式  
  15. android:inputType="textLongMessage"--长消息格式  
  16. android:inputType="textPersonName"--人名格式  
  17. android:inputType="textPostalAddress"--邮政格式  
  18. android:inputType="textPassword"--密码格式  
  19. android:inputType="textVisiblePassword"--密码可见格式  
  20. android:inputType="textWebEditText"--作为网页表单的文本格式  
  21. android:inputType="textFilter"--文本筛选格式  
  22. android:inputType="textPhonetic"--拼音输入格式  
  23. android:inputType="number"--数字格式  
  24. android:inputType="numberSigned"--有符号数字格式  
  25. android:inputType="numberDecimal"--可以带小数点的浮点格式  
  26. android:inputType="phone"--拨号键盘  
  27. android:inputType="datetime"  
  28. android:inputType="date"--日期键盘  
  29.   
  30. android:inputType="time"--时间键盘  

【二】软键盘回车键图标设置


【三】实例源码

activity_main.xml

[java] view plaincopy
  1. <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"  
  2.     xmlns:tools="http://schemas.android.com/tools"  
  3.     android:layout_width="fill_parent"  
  4.     android:layout_height="wrap_content" >  
  5.   
  6.     <RelativeLayout  
  7.         android:layout_width="fill_parent"  
  8.         android:layout_height="wrap_content" >  
  9.   
  10.         <TextView  
  11.             android:id="@+id/tip2"  
  12.             android:layout_width="wrap_content"  
  13.             android:layout_height="wrap_content"  
  14.             android:text="1.指定软键盘的类型为:数字  android:inputType = date" />  
  15.   
  16.         <EditText  
  17.             android:id="@+id/edit_tip"  
  18.             android:layout_width="fill_parent"  
  19.             android:layout_height="40dp"  
  20.             android:layout_below="@+id/tip2"  
  21.             android:inputType="date" />  
  22.   
  23.         <TextView  
  24.             android:id="@+id/tip3"  
  25.             android:layout_width="wrap_content"  
  26.             android:layout_height="wrap_content"  
  27.             android:layout_below="@+id/edit_tip"  
  28.             android:text="2.指定软键盘的类型为:文本  android:inputType = text" />  
  29.   
  30.         <EditText  
  31.             android:id="@+id/edit_tip2"  
  32.             android:layout_width="fill_parent"  
  33.             android:layout_height="40dp"  
  34.             android:layout_below="@+id/tip3"  
  35.             android:inputType="text" />  
  36.   
  37.         <TextView  
  38.             android:id="@+id/tip4"  
  39.             android:layout_width="wrap_content"  
  40.             android:layout_height="wrap_content"  
  41.             android:layout_below="@+id/edit_tip2"  
  42.             android:text="3.设置Enter键的图标为【搜索】  android:imeOptions = actionSearch" />  
  43.   
  44.         <EditText  
  45.             android:id="@+id/edit_tip3"  
  46.             android:layout_width="fill_parent"  
  47.             android:layout_height="40dp"  
  48.             android:layout_below="@+id/tip4"  
  49.             android:imeOptions="actionSearch" />  
  50.   
  51.         <TextView  
  52.             android:id="@+id/tip5"  
  53.             android:layout_width="wrap_content"  
  54.             android:layout_height="wrap_content"  
  55.             android:layout_below="@+id/edit_tip3"  
  56.             android:text="4.设置Enter键的图标为【go】 android:imeOptions = actionGo " />  
  57.   
  58.         <EditText  
  59.             android:id="@+id/edit_tip4"  
  60.             android:layout_width="fill_parent"  
  61.             android:layout_height="40dp"  
  62.             android:layout_below="@+id/tip5"  
  63.             android:imeOptions="actionGo" />  
  64.   
  65.         <TextView  
  66.             android:id="@+id/tip6"  
  67.             android:layout_width="wrap_content"  
  68.             android:layout_height="wrap_content"  
  69.             android:layout_below="@+id/edit_tip4"  
  70.             android:text="5.设置Enter键的图标为【send】  android:imeOptions = actionSend" />  
  71.   
  72.         <EditText  
  73.             android:id="@+id/edit_tip5"  
  74.             android:layout_width="fill_parent"  
  75.             android:layout_height="40dp"  
  76.             android:layout_below="@+id/tip6"  
  77.             android:imeOptions="actionSend" />  
  78.   
  79.         <TextView  
  80.             android:id="@+id/tip7"  
  81.             android:layout_width="wrap_content"  
  82.             android:layout_height="wrap_content"  
  83.             android:layout_below="@+id/edit_tip5"  
  84.             android:text="6.设置Enter键的图标为【next】  android:imeOptions = actionNext" />  
  85.   
  86.         <EditText  
  87.             android:id="@+id/edit_tip6"  
  88.             android:layout_width="fill_parent"  
  89.             android:layout_height="40dp"  
  90.             android:layout_below="@+id/tip7"  
  91.             android:imeOptions="actionNext" />  
  92.   
  93.         <TextView  
  94.             android:id="@+id/tip8"  
  95.             android:layout_width="wrap_content"  
  96.             android:layout_height="wrap_content"  
  97.             android:layout_below="@+id/edit_tip6"  
  98.             android:text="7.设置Enter键的图标为【done】  android:imeOptions = actionDone" />  
  99.   
  100.         <EditText  
  101.             android:id="@+id/edit_tip7"  
  102.             android:layout_width="fill_parent"  
  103.             android:layout_height="40dp"  
  104.             android:layout_below="@+id/tip8"  
  105.             android:imeOptions="actionDone" />  
  106.   
  107.         <TextView  
  108.             android:id="@+id/t9"  
  109.             android:layout_width="wrap_content"  
  110.             android:layout_height="wrap_content"  
  111.             android:layout_below="@+id/edit_tip7"  
  112.             android:text="8.设置Enter键的图标为【未指定】  android:imeOptions = actionUnspecified" />  
  113.   
  114.         <EditText  
  115.             android:id="@+id/e9"  
  116.             android:layout_width="fill_parent"  
  117.             android:layout_height="40dp"  
  118.             android:layout_below="@+id/t9"  
  119.             android:imeOptions="actionUnspecified" />  
  120.   
  121.         <TextView  
  122.             android:id="@+id/t10"  
  123.             android:layout_width="wrap_content"  
  124.             android:layout_height="wrap_content"  
  125.             android:layout_below="@+id/e9"  
  126.             android:text="9.设置Enter键的图标为【没有动作】   android:imeOptions = actionNone" />  
  127.   
  128.         <EditText  
  129.             android:id="@+id/e10"  
  130.             android:layout_width="fill_parent"  
  131.             android:layout_height="40dp"  
  132.             android:layout_below="@+id/t10"  
  133.             android:imeOptions="actionNone" />  
  134.     </RelativeLayout>  
  135.   
  136. </ScrollView>  

MainActivity.java

[java] view plaincopy
  1. package com.wirelessqa.edittext;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.view.KeyEvent;  
  6. import android.view.inputmethod.EditorInfo;  
  7. import android.widget.EditText;  
  8. import android.widget.TextView;  
  9. import android.widget.TextView.OnEditorActionListener;  
  10. import android.widget.Toast;  
  11.   
  12. public class MainActivity extends Activity {  
  13.   
  14.     private EditText edit_search      = null;  
  15.     private EditText edit_go          = null;  
  16.     private EditText edit_next        = null;  
  17.     private EditText edit_done        = null;  
  18.     private EditText edit_send        = null;  
  19.     private EditText edit_none        = null;  
  20.     private EditText edit_unspecified = null;  
  21.   
  22.     @Override  
  23.     protected void onCreate(Bundle savedInstanceState) {  
  24.         super.onCreate(savedInstanceState);  
  25.         setContentView(R.layout.activity_main);  
  26.         edit_search = (EditText) findViewById(R.id.edit_tip3);  
  27.         edit_go = (EditText) findViewById(R.id.edit_tip4);  
  28.         edit_send = (EditText) findViewById(R.id.edit_tip5);  
  29.         edit_next = (EditText) findViewById(R.id.edit_tip6);  
  30.         edit_done = (EditText) findViewById(R.id.edit_tip7);  
  31.         edit_unspecified = (EditText) findViewById(R.id.e9);  
  32.         edit_none = (EditText) findViewById(R.id.e10);  
  33.   
  34.         edit_search.setOnEditorActionListener(new OnEditorActionListener() {  
  35.   
  36.             @Override  
  37.             public boolean onEditorAction(TextView arg0, int actionId, KeyEvent event) {  
  38.                 whichImeAction(actionId);  
  39.                 return true;  
  40.             }  
  41.         });  
  42.         edit_go.setOnEditorActionListener(new OnEditorActionListener() {  
  43.   
  44.             @Override  
  45.             public boolean onEditorAction(TextView arg0, int actionId, KeyEvent event) {  
  46.                 whichImeAction(actionId);  
  47.                 return true;  
  48.             }  
  49.         });  
  50.         edit_send.setOnEditorActionListener(new OnEditorActionListener() {  
  51.   
  52.             @Override  
  53.             public boolean onEditorAction(TextView arg0, int actionId, KeyEvent event) {  
  54.                 whichImeAction(actionId);  
  55.                 return true;  
  56.             }  
  57.         });  
  58.         edit_next.setOnEditorActionListener(new OnEditorActionListener() {  
  59.   
  60.             @Override  
  61.             public boolean onEditorAction(TextView arg0, int actionId, KeyEvent event) {  
  62.                 whichImeAction(actionId);  
  63.                 return true;  
  64.             }  
  65.         });  
  66.         edit_done.setOnEditorActionListener(new OnEditorActionListener() {  
  67.   
  68.             @Override  
  69.             public boolean onEditorAction(TextView arg0, int actionId, KeyEvent event) {  
  70.                 whichImeAction(actionId);  
  71.                 return true;  
  72.             }  
  73.         });  
  74.         edit_unspecified.setOnEditorActionListener(new OnEditorActionListener() {  
  75.   
  76.             @Override  
  77.             public boolean onEditorAction(TextView arg0, int actionId, KeyEvent event) {  
  78.                 whichImeAction(actionId);  
  79.                 return true;  
  80.             }  
  81.         });  
  82.         edit_none.setOnEditorActionListener(new OnEditorActionListener() {  
  83.   
  84.             @Override  
  85.             public boolean onEditorAction(TextView arg0, int actionId, KeyEvent event) {  
  86.                 whichImeAction(actionId);  
  87.                 return true;  
  88.             }  
  89.         });  
  90.   
  91.     }  
  92.   
  93.     private void whichImeAction(int actionId) {  
  94.         switch (actionId) {  
  95.             case EditorInfo.IME_ACTION_SEARCH:  
  96.                 Toast.makeText(MainActivity.this"Enter为【搜索】", Toast.LENGTH_SHORT).show();  
  97.                 break;  
  98.             case EditorInfo.IME_ACTION_GO:  
  99.                 Toast.makeText(MainActivity.this"Enter为【go】", Toast.LENGTH_SHORT).show();  
  100.                 break;  
  101.             case EditorInfo.IME_ACTION_NEXT:  
  102.                 Toast.makeText(MainActivity.this"Enter为【下一个】", Toast.LENGTH_SHORT).show();  
  103.                 break;  
  104.             case EditorInfo.IME_ACTION_NONE:  
  105.                 Toast.makeText(MainActivity.this"Enter为【没有动作】", Toast.LENGTH_SHORT).show();  
  106.                 break;  
  107.             case EditorInfo.IME_ACTION_DONE:  
  108.                 Toast.makeText(MainActivity.this"Enter为【完成】", Toast.LENGTH_SHORT).show();  
  109.                 break;  
  110.             case EditorInfo.IME_ACTION_SEND:  
  111.                 Toast.makeText(MainActivity.this"Enter为【发送】", Toast.LENGTH_SHORT).show();  
  112.                 break;  
  113.             case EditorInfo.IME_ACTION_UNSPECIFIED:  
  114.                 Toast.makeText(MainActivity.this"Enter为【未指定】", Toast.LENGTH_SHORT).show();  
  115.                 break;  
  116.             default:  
  117.                 break;  
  118.         }  
  119.     }  
  120.   
  121. }  
0 0
原创粉丝点击