分享

Android: View换切后,无法正常设置焦点或切换后TextView的虚拟键盘不弹出

 herozhou1314 2012-04-02
Android: View换切后,无法正常设置焦点或切换后TextView的虚拟键盘不弹出
2011-11-24 11:55

边学、边测试,花了三天时间完工一个小应用。

遇到很多问题,但最终还是解决了。

我的手机是Android2.2版,所以我也在是2.2版环境下学习,开发。

1. 在同一个Activity中的不同View(layout)中切换界面时,经常发生TextView无法正常取得焦点。

或者更严重的情况是,有了焦点,但点击后,虚拟键盘不弹出,根本就无法正常输入数据。

我昨天晚上为了解决这个焦点和虚拟键盘不弹出的问题,花了三个小时。

最终的解决方法:

当由view1 切换到 view2 时:

setContentView(view2);  
  View v = getCurrentFocus();
  if(v!=null)
  {
   v.clearFocus(); //清空原来的焦点
  }    
  tNumber.requestFocus(); //取的焦点

我在网上看到有人说,当你执行到 setContentView()后,界面并没有马上绘制出来,当界面还没有完成绘制完成,就马上执行到了requestFocus(),所以无法正常取得焦点。

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多