2 linxi7 linxi7 于 2016.03.05 08:46 提问

EditText怎样取消聚焦,让用户点击的时候才出现软键盘

各位大神好,我做的一个小app界面,主界面用EditText获取用户输入qq号码,我运行的时候一进入界面就会直接弹出数字键盘,这样体验很不好。怎样让进入的时候不聚焦EditText,等玩家点击输入框的时候才弹出软键盘呢?我初学android开发,感激各位大神解答。

3个回答

u013596119
u013596119   Rxr 2016.03.05 08:52

贴一下代码吧,正常情况应该是点击才出现键盘的,可能多设定了什么

u013596119
u013596119 找个别的控件设置:android:focusable="true" android:focusableInTouchMode="true"
接近 2 年之前 回复
linxi7
linxi7 就是一些普通的属性设置,每次跑起来之后就立马出现软键盘让我输入数字了。真机和模拟器上都是这样
接近 2 年之前 回复
linxi7
linxi7 <EditText android:id="@+id/qqnumber" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:hint="请输入QQ号码" android:inputType="number" android:textColor="#FFFFFF" android:textSize="18sp" />
接近 2 年之前 回复
linxi7
linxi7 <EditText android:id="@+id/qqnumber" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:hint="请输入QQ号码" android:inputType="number" android:textColor="#FFFFFF" android:textSize="18sp" />
接近 2 年之前 回复
linxi7
linxi7 <EditText android:id="@+id/qqnumber" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:hint="请输入QQ号码" android:inputType="number" android:textColor="#FFFFFF" android:textSize="18sp" />
接近 2 年之前 回复
Magiceternal
Magiceternal   2016.03.05 08:58

设置默认不获得焦点。

j550341130
j550341130   2016.03.05 14:24

在该界面最外层添加一个专门截取焦点的控件:

     <TextView
        android:id="@+id/qxjd"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

然后在Activity中添加:

        TextView aa = (TextView) findViewById(R.id.qxjd);
        aa.setFocusable(true);
        aa.setFocusableInTouchMode(true);
        aa.requestFocus();

属性缺一不可。

j550341130
j550341130 回复linxi7: 这些属性是设置TextView的,在界面中添加一个TextView获取焦点,让你的EditText获取不到焦点
接近 2 年之前 回复
linxi7
linxi7 回复叽哩叽哩鸡: 我的EditText中没有Focus这些属性的。
接近 2 年之前 回复
j550341130
j550341130 另外也要注意在你的EditText中删掉 <Request Focus/>
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!