手机调用系统的拍照和裁剪功能,假设界面有输入框EditText,在一些手机会出现点击EditText会弹出输入法,却不能输入的情况。

1、
拍照裁剪后 点击EditText会弹出输入法,却不能输入。可是点击点一EdtiText就能够输入了,所以我就写了一个看不见的EdtiText,切换焦点。这样就攻克了这个奇怪的这问题,应该是android内部的问题。

这是网络一个牛人留下的总结,可是一直没有搞明确,怎么的隐藏。

在一般手机可能没有问题。可是HTC小手机就是给发送焦点也不能使用。就是不能输入字.

    <!-- 改动在HTC A510e手机拍照后裁剪图片后 出现输入不了字的bug。和功能没有关系 -->

 <!-- 这是隐藏的EditText-->
    <EditText
        android:id="@+id/frist_et"
        android:layout_width="fill_parent"
        android:layout_height="10dip"
        android:layout_marginLeft="5dip"
        android:layout_marginTop="-10dip"
        android:background="@null"
        android:hint="@string/register_nick_introduction"
        android:singleLine="true" />

<!-- 这是头像,点击此ImageView调用底层的拍照和裁剪功能。

-->

        <ImageView
            android:id="@+id/personal_info_photo"
            android:layout_width="96dip"
            android:layout_height="96dip"
            android:layout_centerHorizontal="true"
            android:background="@drawable/img_avatar_default" />

这是功能须要的EditText.

    <EditText
        android:id="@+id/nicknameEditText"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dip"
        android:background="@null"
        android:hint="@string/register_nick_introduction"
        android:singleLine="true" />

通过EditText相互交换焦点的方式来解决不能输入字的问题.

   fristEt.clearFocus();
   nickNameEditText.requestFocus();

             fristEt.clearFocus();
             nickNameEditText.requestFocus();

假设大家在项目碰到到此问题,大家能够交流一下,有更好的解决方法。谢谢。

原文地址:https://www.cnblogs.com/llguanli/p/7202582.html