EditText 默认不获取焦点,弹出软键盘布局变形解决方案

关于弹出软键盘布局变形解决方案:

在androidMainfest.xml文件中在此Activity中写入 android:windowSoftInputMode="adjustPan"

在实际开发中,有的页面用到Edittext控件,这时候进入该页面可能会自动弹出输入法

这么显示不太友好,所以需要设置一下让Edittext默认不自动获取焦点。在网上查资料解决办法如下:

在EditText的父级控件中找一个,设置成

android:focusable="true"
android:focusableInTouchMode="true"
<LinearLayout
	android:layout_width="match_parent"
	android:layout_height="74dp"
	android:focusable="true"
	android:focusableInTouchMode="true"
	android:gravity="center_vertical"
	android:orientation="horizontal"
	android:paddingLeft="20dip"
	android:paddingRight="20dip" >

	<TextView
		style="@style/BillDetailLabel"
		android:text="@string/takecar_car_kilometre" />

	<EditText
		android:id="@+id/my_bill_detail_takecar_car_kilometre_content"
		style="@style/BillDetailContent"
		android:layout_width="0dp"
		android:layout_marginLeft="10dp"
		android:layout_weight="1"
		android:gravity="left"
		android:inputType="number"
		android:maxLength="9" />

	<TextView
		style="@style/BillDetailLabel"
		android:layout_marginLeft="2dp"
		android:text="@string/kilometre" />

	<Button
		android:id="@+id/my_bill_detail_takepic_btn"
		android:layout_width="wrap_content"
		android:layout_height="wrap_content"
		android:layout_marginLeft="10dp"
		android:background="@drawable/my_bill_detail_camera_icon_selector" />
</LinearLayout>

  开始会自动获取焦点的元素是 my_bill_detail_takecar_car_kilometre_content

 

当我在该 EditText 的父节点 LinearLayout 上面设置了

 

android:focusable="true"
android:focusableInTouchMode="true"

之后就不会启动这个画面默认启动输入法了

时间: 2024-11-25 12:45:47

EditText 默认不获取焦点,弹出软键盘布局变形解决方案的相关文章

如何让edittext获得焦点时弹出软键盘,不让软键盘超出edittext的位置

问题描述 如何让edittext获得焦点时弹出软键盘,不让软键盘超出edittext的位置 如何让edittext获得焦点时弹出软键盘,不让软键盘超出edittext的位置 解决方案 关于EditText获得焦点不弹出软键盘Android中设置EditText获得焦点时不弹出软键盘Android中设置EditText获得焦点时不弹出软键盘 解决方案二: 浮动edittext到视窗顶端或底端 解决方案三: 根据焦点的位置,设置软键盘显示位置

EditText默认不弹出软键盘

#EditText默认不弹出软键盘# 网上关于EditText默认情况下不弹出软键盘,当手触摸到EditText,获取焦点时候,才会弹出软键盘,貌似都不能用,其实,在oncreate()方法中,加上 getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); 就能达到预期效果,至于,让EditText永远不获取焦点的方法,网上大把的,百度即可,暂时没有遇见让EditText永远不获取焦点的场

Android 设置Edittext获取焦点并弹出软键盘

Android 设置Edittext获取焦点并弹出软键盘 /** * EditText获取焦点并显示软键盘 */ public static void showSoftInputFromWindow(Activity activity, EditText editText) { editText.setFocusable(true); editText.setFocusableInTouchMode(true); editText.requestFocus(); activity.getWind

android edittext在有焦点时,再次点击弹出软键盘,edittext会被挡住。

问题描述 android edittext在有焦点时,再次点击弹出软键盘,edittext会被挡住. android edittext在有焦点时,再次点击弹出软键盘,界面不会上移,edittext会被挡住.多谢大神了,有没有好一些的方法. 解决方案 Android的EditText在怎样获取焦点并弹出软键盘android edittext不弹出软键盘android EditText软键盘弹出控制 解决方案二: 方法很多,网上有介绍,比如你可以把你所有的元素都放到scrollview中 解决方案三

为什么android 自定义dilog里的edittext不弹出软键盘?

问题描述 为什么android 自定义dilog里的edittext不弹出软键盘? LayoutInflater inflater = LayoutInflater.from(mContext); LinearLayout dilogview = (LinearLayout) inflater.inflate(R.layout.dilog_comment, null); final Dialog dialog = new AlertDialog.Builder(mContext).create(

android避免弹出软键盘遮盖listview的简单方法_Android

做开发的时候,我们常常把listview放中间,然后底部放置一个edittext控件,这样导致editext控件获得焦点的时候,输入法弹出,Edittext控件上移,挡住了listview的部分数据,这样不太美观.所以,我们需要让listview也跟着上移,所以需要: 方法一:在xml文件中,设置listview属性时候加上这句就ok了android:transcriptMode="normal": 方法二:在程序中加入语句: listView.setTranscriptMode(Li

对话框-android 弹出软键盘?

问题描述 android 弹出软键盘? 在一个页面 ,弹出对话框的同时弹出软键盘 是通过点击事件还是怎么处理 ,我需要通过点击事件弹出对话框文本的同时弹出软键盘? 解决方案 InputMethodManager inputMethodManager = (InputMethodManager) a.getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.showSoftInput(v, InputMethodManag

android避免弹出软键盘遮盖listview的简单方法

做开发的时候,我们常常把listview放中间,然后底部放置一个edittext控件,这样导致editext控件获得焦点的时候,输入法弹出,Edittext控件上移,挡住了listview的部分数据,这样不太美观.所以,我们需要让listview也跟着上移,所以需要: 方法一:在xml文件中,设置listview属性时候加上这句就ok了android:transcriptMode="normal": 方法二:在程序中加入语句: listView.setTranscriptMode(Li

【Android】自定义带进度条的WebView,修复不弹出软键盘的BUG

记录下最近开发中研究的带进度条的WebView 自定义类吧. 其实网上有不少这样的帖子,但是都没有一个完整的好用的例子,最关键的是,用网上的例子后有一个很明显的bug,就是遇到输入框的话没法弹出软键盘.研究了好久总算搞定了.特此记录下. 直接上源代码,关于代码的解释,个人感觉注释中已经添加的足够清楚了. ProgressWebView import android.content.Context; import android.content.res.Resources; import andr