EditText没获得焦点前,单击只能获得焦点,并不触发onclick事件,网上已经有好多处理方法了。其处理方法都是用onTouchEvent事件处理,有时会很不方便。比如当使用数据绑定时!
其实单击直接触发onclick事件很容易处理的。
在layout中加下如下2行:
android:clickable="true"  //允许单击 android:focusableInTouchMode="false" //不获得焦点,此时会触发onclick事件
EditText中完整例子: android:layout_width="wrap_content" android:layout_height="wrap_content" android:clickable="true" android:focusableInTouchMode="false" android:onClick="@{EditTextClick}"  //数据绑定 android:text="@{user.firstName}">    //数据绑定
如果需要同时获得焦点,则在onclick处理中添加如下代码
(EditText) mEditText=(EditText)v;
//Log.i(mEditText.getTag().toString(),"点击了");
mEditText.setFocusable(true); mEditText.setFocusableInTouchMode(true); mEditText.requestFocus(); mEditText.requestFocusFromTouch();
还要自动弹出软键盘?!加入以下2行就行啦
InputMethodManager  inputManager =        (InputMethodManager)mEditText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); inputManager.showSoftInput(mEditText, 0);

转载自:http://blog.sina.com.cn/s/blog_15a25b0570102wr41.html

更多相关文章

  1. Android Touch事件原理加实例分析
  2. Android 双指同时点击事件模拟
  3. android 关于焦点的获取与监听失效问题的处理
  4. Android 应用初始化及窗体事件的分发
  5. Android焦点分析之View
  6. Android中EditText输入框焦点从文字前面变成文字后面
  7. TextView跑马灯的几点问题:持续动画 和 与EditText争抢焦点的问题
  8. Android Studio中Edittext监听回车事件,捕获手机和扫描枪的Enter
  9. 如何让Android下的多行EditText焦点光标默认在第一行

随机推荐

  1. Android(安卓)Build及相关类
  2. android webview 使用js加载json文件失败
  3. 让背景小图不是拉伸而是多个重复
  4. Android下相机的调用
  5. 如何使Android应用程序获取系统权限
  6. android sdk 下载缓慢的问题
  7. android 设置 button 不同状态的图片
  8. 解决问题:Could not find method android(
  9. ok6410 android driver(10)
  10. 关于Android(安卓)studio的build.gradle