1、EditText退格

按下自定义的按钮—>EditText退格

<Button            android:layout_width="80dp"            android:layout_height="40dp"            android:layout_weight="1"            android:background="@drawable/button_shape"            android:textSize="10pt"            android:textColor="@android:color/black"            android:text="退格"            android:onClick="backGrid" />
----->按下按钮--调用backGrid方法
/**----- 退格 ----------------------*/    public void backGrid(View view){        EditText edit_text1 = (EditText) findViewById(R.id.edit_text1);        EditText edit_text2 = (EditText) findViewById(R.id.edit_text2);        EditText edit_text3 = (EditText) findViewById(R.id.edit_text3);        if (edit_text1.isFocused()) {            //动作按下            int action = KeyEvent.ACTION_DOWN;            //code:删除,其他code也可以,例如 code = 0            int code = KeyEvent.KEYCODE_DEL;            KeyEvent event = new KeyEvent(action, code);            edit_text1.onKeyDown(KeyEvent.KEYCODE_DEL, event); //抛给系统处理了        }else if (edit_text2.isFocused()) {            //动作按下            int action = KeyEvent.ACTION_DOWN;            //code:删除,其他code也可以,例如 code = 0            int code = KeyEvent.KEYCODE_DEL;            KeyEvent event = new KeyEvent(action, code);            edit_text2.onKeyDown(KeyEvent.KEYCODE_DEL, event); //抛给系统处理了        } else if (edit_text3.isFocused()) {            //动作按下            int action = KeyEvent.ACTION_DOWN;            //code:删除,其他code也可以,例如 code = 0            int code = KeyEvent.KEYCODE_DEL;            KeyEvent event = new KeyEvent(action, code);            edit_text3.onKeyDown(KeyEvent.KEYCODE_DEL, event); //抛给系统处理了        }    }

2、焦点转移--更人性化

/**----- 计算末端MAC地址 ------------*/    public void getResult(View view){        EditText edit_text1 = (EditText) findViewById(R.id.edit_text1);        EditText edit_text2 = (EditText) findViewById(R.id.edit_text2);        EditText edit_text3 = (EditText) findViewById(R.id.edit_text3);        TextView result = (TextView) findViewById(R.id.textview_macEnd);        //清除错误消息框        edit_text1.setError(null);        edit_text2.setError(null);        edit_text3.setError(null);        //对所有输入框的文本内容进行检查--是否为空        if("".equals(edit_text1.getText().toString())){            edit_text1.setError("请输入内容");            //获取焦点--让用户可以直接输入---更加人性化            edit_text1.requestFocus();            return;        }else if("".equals(edit_text2.getText().toString())){            edit_text2.setError("请输入内容");            //获取焦点--让用户可以直接输入---更加人性化            edit_text2.requestFocus();            return;        }else if("".equals(edit_text3.getText().toString())){            edit_text3.setError("请输入内容");            //获取焦点--让用户可以直接输入---更加人性化            edit_text3.requestFocus();            return;        }
          Long macStart= Long.parseLong(edit_text1.getText().toString(),16);        Long num1= Long.parseLong(edit_text2.getText().toString(),10);        Long num2Long.parseLong(edit_text3.getText().toString(),10);       //得出结果并打印         result.setTextSize(20);        result.setTextColor(Color.BLACK);        result.setText("0x" + Long.toHexString(macStart+num1*num2-1));    }

上面这个获取焦点的方法edit_text3.requestFocus();

我是从在这里找的:

http://zhidao.baidu.com/link?url=m2D0RHV22wibTR8c5oWgRCzgcQfwLcaoRkWo5CIxmIAa83ui8ZAsPdyL5KUXGjhTnWYU8Ji4D244m2NoGjI9z_
android中,要使控件获得焦点,需要先setFocus,再requestFocus。
以Button为例:     btn.setFocusable(true);    
                 btn.setFocusableInTouchMode(true);
然后获取焦点:      btn.requestFocus();       
                 btn.requestFocusFromTouch();
因为系统默认EditText就是Focusable-true、FocusableInTouchMode-true,
所以我在
 
//获取焦点--让用户可以直接输入---更加人性化            edit_text1.requestFocus();
直接申请获取焦点,结果获取成功,Ok。

更多相关文章

  1. Android群英传知识点回顾——第九章:Android系统信息与安全机制
  2. (OK) Android系统启动-SystemServer上篇
  3. Android系统框架基础
  4. 禁止Edittext弹出系统软键盘 的几种方法
  5. 屏幕切换,保存内容
  6. android获取系统wifi状态等
  7. 64位系统使用Android虚拟机问题
  8. android 实现左右拖动的网页焦点图

随机推荐

  1. Android本地层基础结构
  2. 解决Android8广播的静态注册接收不到问题
  3. android 中http请求的容错管理
  4. android 常用测试框架
  5. 详解Serializable
  6. Android ListView:实现item内部控件的点击
  7. Android(安卓)Annotations 学习之路(二)解
  8. Android 9 网络适配 (系统造成App内图片
  9. android 自定义AlertDialog 与Activity相
  10. Android sdk 软件栈