请问在edittext中,我想在edittext得到焦点和失去焦点时做一些事情该如何处理 我现在想做一个这样的功能,点击edittext时得到焦点,修改edittext中的数据,当点屏幕别的地方的空地或者别的控件时,edittext失去焦点,这时将edittext中的数据保存到数据库中,请问该怎么做啊,初学,根据别的编程思路我想完成这个功能,谢谢各位大侠,请指点。还有默认进入一个Activity时,唯一的一个edittext先不要获得焦点。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.点击屏幕其他地方失去焦点:edittext.setOnTouchListener(new View.OnTouchListener(){ @Override public boolean onTouch(View view ,MotionEvent event){ if(event.getAction() == MotionEvent.ACTION_OUTSIDE){ edittext.setFocusable(false);//EditText 失去焦点 //其他要实现的功能。 } }});2.进入一个Activity时,唯一的一个edittext先不要获得焦点: 直接将eidttext的focusable 设成false : edittext.setFocusable(false); edittext是继承view的,设置一个focus的监听void setOnFocusChangeListener(View.OnFocusChangeListener l)然后直接里面去实现void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect)就可以了。 这个方法不管用啊edittext.setFocusable(false);这个管用不过我在public boolean onTouch(View v, MotionEvent event) { if(event.getAction() == MotionEvent.ACTION_OUTSIDE){ et.setFocusable(false); tv.setText("111111"); //others }这个里面完全不管用啊 setOnFocusChangeListener也不管用的说 sorry.组件先获得焦点后,再用setFocusable(false)不会失去焦点,只会将它设为不可获取焦点。 这个时候你可以采用另外一种思路,转移焦点。我就是这么处理的。让这个layout上面的其他view获取焦点比如button,调用button的requestFocus方法即可。 关于编译Android SDK获取Calender接口的请教 新手问题 贡献15本pdf版经典Android教程,很值得看 请教 AnimationDrawable 与 声音结合的问题 对话框里可否使用布局文件?How? 菜鸟问个基础问题 100分,进者有分 开机动画bootanimation问题 root 如何删除“权限管理superuser程序”或者把自己的程序自动添加到superuser中?? Android的视频监控,不懂? 安卓辅助服务AccessibilityService与UI相互通信的方法 地图标注问题 android 内核模块(LKM)编程问题
edittext.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View view ,MotionEvent event){
if(event.getAction() == MotionEvent.ACTION_OUTSIDE){
edittext.setFocusable(false);//EditText 失去焦点
//其他要实现的功能。
}
}
});2.进入一个Activity时,唯一的一个edittext先不要获得焦点:
直接将eidttext的focusable 设成false :
edittext.setFocusable(false);
void setOnFocusChangeListener(View.OnFocusChangeListener l)
然后直接里面去实现
void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect)
就可以了。
edittext.setFocusable(false);这个管用
不过我在
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_OUTSIDE){
et.setFocusable(false);
tv.setText("111111");
//others
}
这个里面完全不管用啊