Android软件开发之EditText 详解

 
Android软件开发之EditText 详解

EditText在API中的结构

java.lang.Object
 android.view.View
  android.widget.TextView        
   android.widget.EditText

已知直接子类:
   AutoCompleteTextView, ExtractEditText

已知间接子类:
   MultiAutoCompleteTextView

      
       EditText是TextView的直接子类 所以EditText会继承父类TextView的一些方法。下面我用自己写的一个Demo 和大家详细的说明一下EditView的使用方法。

1.简单的EditText输入框

       非常简单,在layout布局中配置一下EditText 在配置一个Button 在代码中监听Button 的事件 获取当前EditView中输入的内容并且显示出来。

view plaincopy to clipboardprint?

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:id="@+id/textviewll"  
  4.     android:orientation="vertical" android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent">  
  6.     <EditText    
  7.       android:id="@+id/sample_edit_text0"      
  8.       android:layout_width="fill_parent"     
  9.       android:layout_height="wrap_content"   
  10.       android:text="简单的EditText输入框"/>   
  11.     <Button   
  12.       android:id="@+id/sample_button0"  
  13.       android:layout_width="fill_parent" android:layout_height="wrap_content"  
  14.       android:text="确定"/>  
  15. </LinearLayout>  

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/textviewll"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent"><EditText android:id="@+id/sample_edit_text0" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="简单的EditText输入框"/> <Button android:id="@+id/sample_button0" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="确定"/></LinearLayout>

view plaincopy to clipboardprint?

  1. public class SampleActivity extends Activity {  
  2.     @Override  
  3.     protected void onCreate(Bundle savedInstanceState) {  
  4.     setContentView(R.layout.sample);  
  5.       
  6.     final EditText editText0 = (EditText)findViewById(R.id.sample_edit_text0);  
  7.   
  8.     Button button0 = (Button)findViewById(R.id.sample_button0);  
  9.   
  10.     button0.setOnClickListener(new OnClickListener() {  
  11.           
  12.         @Override  
  13.         public void onClick(View arg0) {  
  14.         String str = editText0.getText().toString();  
  15.         Toast.makeText(SampleActivity.this,str, Toast.LENGTH_LONG).show();  
  16.         }  
  17.     });  
  18.   
  19.     super.onCreate(savedInstanceState);  
  20.     }  
  21. }  

public class SampleActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) {setContentView(R.layout.sample);final EditText editText0 = (EditText)findViewById(R.id.sample_edit_text0);Button button0 = (Button)findViewById(R.id.sample_button0);button0.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) {String str = editText0.getText().toString();Toast.makeText(SampleActivity.this,str, Toast.LENGTH_LONG).show(); }});super.onCreate(savedInstanceState); }}


2.限制EditText输入框的内容

在layout中配置信息

android:digits="1234567890.+-*/%\n()"
限制输入框中只能输入自己定义的这些字符串 如果输入其它将不予以显示
android:phoneNumber="true" 
限制输入框中只能输入手机号码
android:password="true"
限制输入框中输入的任何内容将以"*"符号来显示
android:hint="默认文字"
输入内容前默认显示在输入框中的文字
android:textColorHint="#FF0000"
设置文字内容颜色
android:enabled="false"
设置输入框不能被编辑

 

3.编辑框中显示图片

      上一篇讲TextView中就讲过在TextView中添加图片的方法,因为EditText是TextView的子类, 所以当然也可以添加图片了,只是一旦在EditText中添加图片以后是不能删除的,如图所示我可以编辑图片旁边的内容,写入文字。

view plaincopy to clipboardprint?

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:id="@+id/textviewll"  
  4.     android:orientation="vertical"   
  5.     android:layout_width="fill_parent"  
  6.     android:layout_height="fill_parent"  
  7.     >  
  8.     <EditText   
  9.               android:layout_width="wrap_content"   
  10.               android:layout_height="wrap_content"  
  11.               android:text="在图片下方"  
  12.               android:textColor="#FF0000"  
  13.               android:drawableBottom="@drawable/jay"  
  14.               android:layout_alignParentTop="true"  
  15.               android:layout_centerHorizontal="true"  
  16.               >  
  17.      </EditText>  
  18.     
  19.      <EditText   
  20.               android:layout_width="wrap_content"   
  21.               android:layout_height="wrap_content"  
  22.               android:text="在图片上方"  
  23.               android:textColor="#FF0000"  
  24.               android:drawableTop="@drawable/jay"  
  25.               android:layout_alignParentBottom="true"  
  26.               android:layout_centerHorizontal="true"  
  27.               >  
  28.      </EditText>   
  29.      <EditText   
  30.               android:layout_width="wrap_content"   
  31.               android:layout_height="wrap_content"  
  32.               android:text="在图片左边"  
  33.               android:textColor="#FF0000"  
  34.               android:drawableLeft="@drawable/jay"  
  35.              android:layout_alignParentLeft="true"  
  36.               android:layout_centerVertical="true"  
  37.               >  
  38.      </EditText>      
  39.      <EditText   
  40.               android:layout_width="wrap_content"   
  41.               android:layout_height="wrap_content"  
  42.               android:text="在图片右边"  
  43.               android:textColor="#FF0000"  
  44.               android:drawableRight="@drawable/jay"  
  45.               android:layout_alignParentRight="true"  
  46.               android:layout_centerVertical="true"  
  47.               >  
  48.      </EditText>   
  49.   
  50. </RelativeLayout >  

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/textviewll"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent"><EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="在图片下方" android:textColor="#FF0000" android:drawableBottom="@drawable/jay" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" > </EditText> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="在图片上方" android:textColor="#FF0000" android:drawableTop="@drawable/jay" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" > </EditText> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="在图片左边" android:textColor="#FF0000" android:drawableLeft="@drawable/jay" android:layout_alignParentLeft="true" android:layout_centerVertical="true" > </EditText> <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="在图片右边" android:textColor="#FF0000" android:drawableRight="@drawable/jay" android:layout_alignParentRight="true" android:layout_centerVertical="true" > </EditText> </RelativeLayout >

4.设置软键盘的Enter键

如图所示我们可以修改软键盘的Enter按钮的样式,可以在代码中监听 按钮点击事件。

view plaincopy to clipboardprint?

  1. package cn.m15.xys;  
  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.Toast;  
  10. import android.widget.TextView.OnEditorActionListener;  
  11.   
  12. public class KeyBoardActivity extends Activity {  
  13.     @Override  
  14.     protected void onCreate(Bundle savedInstanceState) {  
  15.     setContentView(R.layout.keyboard);  
  16.   
  17.     EditText editText0 = (EditText)findViewById(R.id.txtTest0);  
  18.       
  19.     editText0.setOnEditorActionListener(new OnEditorActionListener() {  
  20.   
  21.         @Override  
  22.         public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {  
  23.         if (arg1 == EditorInfo.IME_ACTION_GO) {  
  24.             Toast.makeText(KeyBoardActivity.this, "你点了软键盘'去往'按钮",  
  25.                 Toast.LENGTH_SHORT).show();  
  26.         }  
  27.         return false;  
  28.         }  
  29.     });  
  30.     EditText editText1 = (EditText)findViewById(R.id.txtTest1);  
  31.       
  32.     editText1.setOnEditorActionListener(new OnEditorActionListener() {  
  33.   
  34.         @Override  
  35.         public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {  
  36.         if (arg1 == EditorInfo.IME_ACTION_SEARCH) {  
  37.             Toast.makeText(KeyBoardActivity.this, "你点了软键盘'搜索'按钮",  
  38.                 Toast.LENGTH_SHORT).show();  
  39.         }  
  40.         return false;  
  41.         }  
  42.     });  
  43.     EditText editText2 = (EditText)findViewById(R.id.txtTest2);  
  44.       
  45.     editText2.setOnEditorActionListener(new OnEditorActionListener() {  
  46.   
  47.         @Override  
  48.         public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {  
  49.         if (arg1 == EditorInfo.IME_ACTION_SEND) {  
  50.             Toast.makeText(KeyBoardActivity.this, "你点了软键盘'发送'按钮",  
  51.                 Toast.LENGTH_SHORT).show();  
  52.         }  
  53.         return false;  
  54.         }  
  55.     });  
  56.     EditText editText3 = (EditText)findViewById(R.id.txtTest3);  
  57.       
  58.     editText3.setOnEditorActionListener(new OnEditorActionListener() {  
  59.   
  60.         @Override  
  61.         public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {  
  62.         if (arg1 == EditorInfo.IME_ACTION_NEXT) {  
  63.             Toast.makeText(KeyBoardActivity.this, "你点了软键盘'下一个'按钮",  
  64.                 Toast.LENGTH_SHORT).show();  
  65.         }  
  66.         return false;  
  67.         }  
  68.     });  
  69.     EditText editText4 = (EditText)findViewById(R.id.txtTest4);  
  70.       
  71.     editText4.setOnEditorActionListener(new OnEditorActionListener() {  
  72.   
  73.         @Override  
  74.         public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {  
  75.         if (arg1 == EditorInfo.IME_ACTION_DONE) {  
  76.             Toast.makeText(KeyBoardActivity.this, "你点了软键盘'完成'按钮",  
  77.                 Toast.LENGTH_SHORT).show();  
  78.         }  
  79.         return false;  
  80.         }  
  81.     });  
  82.     EditText editText5 = (EditText)findViewById(R.id.txtTest5);  
  83.       
  84.     editText5.setOnEditorActionListener(new OnEditorActionListener() {  
  85.   
  86.         @Override  
  87.         public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {  
  88.         if (arg1 == EditorInfo.IME_ACTION_UNSPECIFIED) {  
  89.             Toast.makeText(KeyBoardActivity.this, "你点了软键盘'未指定'按钮",  
  90.                 Toast.LENGTH_SHORT).show();  
  91.         }  
  92.         return false;  
  93.         }  
  94.     });  
  95.     super.onCreate(savedInstanceState);  
  96.     }  
  97. }  

package cn.m15.xys;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.view.inputmethod.EditorInfo;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;import android.widget.TextView.OnEditorActionListener;public class KeyBoardActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) {setContentView(R.layout.keyboard);EditText editText0 = (EditText)findViewById(R.id.txtTest0);editText0.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {if (arg1 == EditorInfo.IME_ACTION_GO) { Toast.makeText(KeyBoardActivity.this, "你点了软键盘'去往'按钮", Toast.LENGTH_SHORT).show();}return false; }});EditText editText1 = (EditText)findViewById(R.id.txtTest1);editText1.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {if (arg1 == EditorInfo.IME_ACTION_SEARCH) { Toast.makeText(KeyBoardActivity.this, "你点了软键盘'搜索'按钮", Toast.LENGTH_SHORT).show();}return false; }});EditText editText2 = (EditText)findViewById(R.id.txtTest2);editText2.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {if (arg1 == EditorInfo.IME_ACTION_SEND) { Toast.makeText(KeyBoardActivity.this, "你点了软键盘'发送'按钮", Toast.LENGTH_SHORT).show();}return false; }});EditText editText3 = (EditText)findViewById(R.id.txtTest3);editText3.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {if (arg1 == EditorInfo.IME_ACTION_NEXT) { Toast.makeText(KeyBoardActivity.this, "你点了软键盘'下一个'按钮", Toast.LENGTH_SHORT).show();}return false; }});EditText editText4 = (EditText)findViewById(R.id.txtTest4);editText4.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {if (arg1 == EditorInfo.IME_ACTION_DONE) { Toast.makeText(KeyBoardActivity.this, "你点了软键盘'完成'按钮", Toast.LENGTH_SHORT).show();}return false; }});EditText editText5 = (EditText)findViewById(R.id.txtTest5);editText5.setOnEditorActionListener(new OnEditorActionListener() { @Override public boolean onEditorAction(TextView arg0, int arg1, KeyEvent arg2) {if (arg1 == EditorInfo.IME_ACTION_UNSPECIFIED) { Toast.makeText(KeyBoardActivity.this, "你点了软键盘'未指定'按钮", Toast.LENGTH_SHORT).show();}return false; }});super.onCreate(savedInstanceState); }}

监听软键盘的点击事件

view plaincopy to clipboardprint?

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:id="@+id/textviewll"  
  4.     android:orientation="vertical" android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent">  
  6.     <EditText android:id="@+id/txtTest0"   
  7.      android:imeOptions="actionGo"  
  8.      android:layout_width="fill_parent"  
  9.      android:layout_height="wrap_content"  
  10.      android:hint="特殊按钮-去往"  
  11.      ></EditText>  
  12.     <EditText android:id="@+id/txtTest1"   
  13.      android:imeOptions="actionSearch"  
  14.      android:layout_width="fill_parent"  
  15.      android:layout_height="wrap_content"  
  16.      android:hint="特殊按钮-搜索"  
  17.      ></EditText>  
  18.     <EditText android:id="@+id/txtTest2"   
  19.      android:imeOptions="actionSend"  
  20.      android:layout_width="fill_parent"  
  21.      android:layout_height="wrap_content"  
  22.      android:hint="特殊按钮-发送"  
  23.      ></EditText>  
  24.     <EditText android:id="@+id/txtTest3"   
  25.      android:imeOptions="actionNext"  
  26.      android:layout_width="fill_parent"  
  27.      android:layout_height="wrap_content"  
  28.      android:hint="特殊按钮-下一个"  
  29.      ></EditText>  
  30.     <EditText android:id="@+id/txtTest4"   
  31.      android:imeOptions="actionDone"  
  32.      android:layout_width="fill_parent"  
  33.      android:layout_height="wrap_content"  
  34.      android:hint="特殊按钮-完成"  
  35.      ></EditText>  
  36.     <EditText android:id="@+id/txtTest5"   
  37.      android:imeOptions="actionUnspecified"  
  38.      android:layout_width="fill_parent"  
  39.      android:layout_height="wrap_content"  
  40.      android:hint="特殊按钮-未指定"  
  41.      ></EditText>  
  42.   
  43. </LinearLayout>  

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/textviewll"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent"><EditText android:id="@+id/txtTest0" android:imeOptions="actionGo" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="特殊按钮-去往" ></EditText><EditText android:id="@+id/txtTest1" android:imeOptions="actionSearch" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="特殊按钮-搜索" ></EditText> <EditText android:id="@+id/txtTest2" android:imeOptions="actionSend" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="特殊按钮-发送" ></EditText> <EditText android:id="@+id/txtTest3" android:imeOptions="actionNext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="特殊按钮-下一个" ></EditText> <EditText android:id="@+id/txtTest4" android:imeOptions="actionDone" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="特殊按钮-完成" ></EditText> <EditText android:id="@+id/txtTest5" android:imeOptions="actionUnspecified" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="特殊按钮-未指定" ></EditText></LinearLayout>
5.监听软键盘的按键事件

        做项目的时候 有时候须要在用户输入内容时做检测,比如如果用户输入不合法的内容不予以显示在EditText中, 这时候我就要用到addTextChangedListener 用它来监听用户输入状态。可以在监听中改变用户输入的内容或者提示用户输入内容不合法等等。 如图所示我的每次输入操作都可以被正常的监听出来,用户输入内容的正常流程 beforeTextChanged()  -》onTextChanged()  -》afterTextChanged()然后是通知屏幕绘制 显示在屏幕上 所以我们可以在这三个方法中来修改用户输入内容 或者截取用户输入的内容。 

view plaincopy to clipboardprint?

  1. package cn.m15.xys;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5. import android.text.Editable;  
  6. import android.text.TextWatcher;  
  7. import android.widget.EditText;  
  8. import android.widget.TextView;  
  9.   
  10. public class MonitorKeyActivity extends Activity {  
  11.     @Override  
  12.     protected void onCreate(Bundle savedInstanceState) {  
  13.     setContentView(R.layout.monitorkey);  
  14.     EditText editText = (EditText)findViewById(R.id.monitor_edit_text0);  
  15.     final TextView textView0 = (TextView)findViewById(R.id.monitor_text0);  
  16.     final TextView textView1 = (TextView)findViewById(R.id.monitor_text1);  
  17.     final TextView textView2 = (TextView)findViewById(R.id.monitor_text2);  
  18.       
  19.     editText.addTextChangedListener(new TextWatcher() {  
  20.           
  21.         @Override  
  22.         public void onTextChanged(CharSequence text, int start, int before, int count) {  
  23.                 //text  输入框中改变后的字符串信息   
  24.         //start 输入框中改变后的字符串的起始位置   
  25.         //before 输入框中改变前的字符串的位置 默认为0   
  26.         //count 输入框中改变后的一共输入字符串的数量   
  27.         textView1.setText("输入后字符串 [ " + text.toString() + " ] 起始光标 [ " + start + " ] 输入数量 [ " + count+" ]");  
  28.           
  29.         }  
  30.           
  31.         @Override  
  32.         public void beforeTextChanged(CharSequence text, int start, int count,int after) {  
  33.         //text  输入框中改变前的字符串信息   
  34.         //start 输入框中改变前的字符串的起始位置   
  35.         //count 输入框中改变前后的字符串改变数量一般为0   
  36.         //after 输入框中改变后的字符串与起始位置的偏移量   
  37.         System.out.println(text.toString());  
  38.         textView0.setText("输入前字符串 [ " + text.toString() + " ]起始光标 [ " + start + " ]结束偏移量  [" + after + " ]");  
  39.         }  
  40.           
  41.         @Override  
  42.         public void afterTextChanged(Editable edit) {  
  43.         //edit  输入结束呈现在输入框中的信息   
  44.         textView2.setText("输入结束后的内容为 [" + edit.toString()+" ] 即将显示在屏幕上");  
  45.         }  
  46.     });  
  47.       
  48.     super.onCreate(savedInstanceState);  
  49.     }  
  50. }  

package cn.m15.xys;import android.app.Activity;import android.os.Bundle;import android.text.Editable;import android.text.TextWatcher;import android.widget.EditText;import android.widget.TextView;public class MonitorKeyActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) {setContentView(R.layout.monitorkey);EditText editText = (EditText)findViewById(R.id.monitor_edit_text0);final TextView textView0 = (TextView)findViewById(R.id.monitor_text0);final TextView textView1 = (TextView)findViewById(R.id.monitor_text1);final TextView textView2 = (TextView)findViewById(R.id.monitor_text2);editText.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence text, int start, int before, int count) { //text 输入框中改变后的字符串信息//start 输入框中改变后的字符串的起始位置//before 输入框中改变前的字符串的位置 默认为0//count 输入框中改变后的一共输入字符串的数量textView1.setText("输入后字符串 [ " + text.toString() + " ] 起始光标 [ " + start + " ] 输入数量 [ " + count+" ]"); } @Override public void beforeTextChanged(CharSequence text, int start, int count,int after) {//text 输入框中改变前的字符串信息//start 输入框中改变前的字符串的起始位置//count 输入框中改变前后的字符串改变数量一般为0//after 输入框中改变后的字符串与起始位置的偏移量System.out.println(text.toString());textView0.setText("输入前字符串 [ " + text.toString() + " ]起始光标 [ " + start + " ]结束偏移量 [" + after + " ]"); } @Override public void afterTextChanged(Editable edit) {//edit 输入结束呈现在输入框中的信息textView2.setText("输入结束后的内容为 [" + edit.toString()+" ] 即将显示在屏幕上"); }});super.onCreate(savedInstanceState); }}

view plaincopy to clipboardprint?

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:id="@+id/textviewll"  
  4.     android:orientation="vertical" android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent">  
  6.     <TextView    
  7.       android:id="@+id/monitor_text0"      
  8.       android:layout_width="fill_parent"     
  9.       android:layout_height="wrap_content"   
  10.       android:textSize="18dip"  
  11.       android:textColor="#FF0000"/>   
  12.     <TextView    
  13.       android:id="@+id/monitor_text1"      
  14.       android:layout_width="fill_parent"     
  15.       android:layout_height="wrap_content"  
  16.       android:textSize="18dip"  
  17.       android:textColor="#FF0000"  
  18.       />   
  19.     <TextView    
  20.       android:id="@+id/monitor_text2"      
  21.       android:layout_width="fill_parent"     
  22.       android:layout_height="wrap_content"  
  23.       android:textSize="18dip"  
  24.       android:textColor="#FF0000"  
  25.       />   
  26.     <EditText    
  27.       android:id="@+id/monitor_edit_text0"      
  28.       android:layout_width="fill_parent"     
  29.       android:layout_height="wrap_content"   
  30.       android:hint="监听软键盘按键的输入状态"/>   
  31. </LinearLayout>  

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/textviewll"android:orientation="vertical" android:layout_width="fill_parent"android:layout_height="fill_parent"><TextView android:id="@+id/monitor_text0" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="18dip" android:textColor="#FF0000"/> <TextView android:id="@+id/monitor_text1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="18dip" android:textColor="#FF0000" /> <TextView android:id="@+id/monitor_text2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="18dip" android:textColor="#FF0000" /> <EditText android:id="@+id/monitor_edit_text0" android:layout_width="fill_parent" android:layout_height="wrap_content" android:hint="监听软键盘按键的输入状态"/> </LinearLayout>

 

时间: 2024-11-05 20:38:59

Android软件开发之EditText 详解的相关文章

Android编程开发之EditText中inputType属性小结

本文总结分析了Android编程开发之EditText中inputType属性.分享给大家供大家参考,具体如下: android 1.5以后添加了软件虚拟键盘的功能,所以在输入提示中将会有对应的软键盘模式. android中inputType属性在EditText输入值时启动的虚拟键盘的风格有着重要的作用.这也大大的方便的操作.有时需要虚拟键盘只为字符或只为数字.所以inputType尤为重要. 复制代码 代码如下:<EditText android:layout_width="fill_

Android编程开发之EditText实现输入QQ表情图像的方法_Android

本文实例讲述了Android编程开发之EditText实现输入QQ表情图像的方法.分享给大家供大家参考,具体如下: 实现效果如下: 将QQ表情图像放到res下的drawable-hdpi文件夹下: 布局文件: <EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:

Android编程开发之EditText实现输入QQ表情图像的方法

本文实例讲述了Android编程开发之EditText实现输入QQ表情图像的方法.分享给大家供大家参考,具体如下: 实现效果如下: 将QQ表情图像放到res下的drawable-hdpi文件夹下: 布局文件: <EditText android:id="@+id/edittext" android:layout_width="fill_parent" android:layout_height="wrap_content" android:

Android编程开发之EditText中不输入特定字符会显示相关提示信息的方法

本文实例讲述了Android编程开发之EditText中不输入特定字符会显示相关提示信息的方法.分享给大家供大家参考,具体如下: 先看效果图: 源码如下: 布局文件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="

Android开发之Activity详解_Android

[Activity] 一个Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务,例如拨号.拍照.发送email.看地图.每一个activity被给予一个窗口,在上面可以绘制用户接口.窗口通常充满屏幕,但也可以小于屏幕而浮于其它窗口之上. 一个应用程序通常由多个activities组成,他们通常是松耦合关系.通常,一个应用程序中的activity被指定为"main"activity,当第一次启动应用程序的时候呈现给用户的那个activity.每一个activ

Android开发之Activity详解

[Activity] 一个Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务,例如拨号.拍照.发送email.看地图.每一个activity被给予一个窗口,在上面可以绘制用户接口.窗口通常充满屏幕,但也可以小于屏幕而浮于其它窗口之上. 一个应用程序通常由多个activities组成,他们通常是松耦合关系.通常,一个应用程序中的activity被指定为"main"activity,当第一次启动应用程序的时候呈现给用户的那个activity.每一个activ

android软件开发之webView.addJavascriptInterface循环渐进【一】

首先必要的啰嗦几句,这几天写VC写的累的要死,突然间不想再写想VC了,手里面有一个andriod的手机天天玩到半夜,却从来没有写过这方面的程序,真的是悲哀啊.所以我就想写这方面的程序,用管了VC的习程序的习惯,第一个程序当然是hello world.刚开始还没有什么大的问题,当到后面想写一刷Q*会员的程序的时候却发现,android的界面布局是真的难啊,怎么摆都不好看.弄得和....什么似的.气得头都大了,想想自己写了这么长时间的VC还真的没有碰到这样的界面问题,真可谓.. 在verycd上看人

IOS开发之property详解

之前很多网友对我翻译的教程中的Property的使用感到有些迷惑不解,搞不清楚什么时候要release,什么时候要self.xxx = nil;同时对于Objective-c的内存管理以及cocos2d的内存管理规则不够清楚.本文主要讲解objc里面@property,它是什么,它有什么用,atomic,nonatomic,readonly,readwrite,assign,retain,copy,getter,setter这些关键字有什么用,什么时候使用它们.至于Objc的内存管理和cocos

iOS开发之UITableView详解_IOS

一.UITableView基本介绍 默认的UITableView有2种风格: UITableViewStylePlain(不分组) UITableViewStyleGrouped(分组) UITableView中的数据只有行的概念,没有列的概念,UITableView的每行数据就是一个UITableViewCell. 自带的UITableViewCell的类型选择有: 复制代码 代码如下: typedef NS_ENUM(NSInteger, UITableViewCellStyle) {