androidrequestfocus
‘壹’ Android 获取焦点
你好,我举例说明:比如有个输入框,当你点击输入框时,这时它的光标在闪烁,可以输入文字,那么就可以说这个输入框获得焦点了。获取焦点的控件就是当前可以执行操作的控件。
使用view.requestFocus()方法可以手动获取焦点。
以上,希望对你有帮助。
‘贰’ android输入框获取焦点的同时还要弹出键盘
当editText获取焦点的时候,需要直接调用显示键盘命令:
java">editText.setOnFocusChangeListener(newView.OnFocusChangeListener(){
@Override
publicvoidonFocusChange(Viewv,booleanhasFocus){
if(hasFocus){
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
}
}
});
‘叁’ Android View如何获取焦点
Android新启动Activity,dialog或者其他窗体中包含EditText, 新启动的activity的焦点默认在EditText上,这时android系统会弹出软键盘,挤压activity本来的界面,影响美观。
因此最好在新窗体创建时,在onCreate()方法中将焦点放在另一个view上。
view使用requestFocus()焦点,但是如果让button或者textView之类控件直接使用requestFocus()方法,则无法获取焦点,焦点会依然在editText上。
只能在使用View的requestFocus()方法之前调用下面2个方法,view才可获取焦点:
view.setFocusable(true);
view.setFocusableInTouchMode(true);
然后调用 view.requestFocus()即可获取焦点。
‘肆’ Android的EditText在怎样获取焦点并弹出软键盘
//让编辑框弹出来,并显示对谁进行评论
commentEditText.setFocusable(true);
commentEditText.setFocusableInTouchMode(true);
commentEditText.requestFocus();
//打开软键盘
InputMethodManagerimm=(InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0,InputMethodManager.HIDE_NOT_ALWAYS);
- //让编辑框弹出来,并显示对谁进行评论
commentEditText.setFocusable(true);
commentEditText.setFocusableInTouchMode(true);
commentEditText.requestFocus();
//打开软键盘
InputMethodManagerimm=(InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0,InputMethodManager.HIDE_NOT_ALWAYS);上面的代码,能够让EditText获取焦点,并弹出软键盘,供输入文本内容。特别适用于评论列表之类的场景。
‘伍’ android 如何让软键盘自动弹出
可以通过下面的代码来实现Android自动弹出软键盘:
edittext.requestFocus(); //edittext是一个EditText控件
Timer timer = new Timer(); //设置定时器
timer.schele(new TimerTask() {
@Override
public void run() { //弹出软键盘的代码
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(edittext, InputMethodManager.RESULT_SHOWN);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,InputMethodManager.HIDE_IMPLICIT_ONLY);
}
}, 300); //设置300毫秒的时长
说明:同样是在写Techo Lite时遇到的问题。希望程序可以自动弹出软键盘,可是尝试了各种办法都没有效果。问题的原因似乎是必须等待UI绘制完成后弹出软键盘的代码才会有效。于是就采用了上面的方法。需要注意的是,在此之前必须让edittext获取焦点,不然也是无效的。
‘陆’ android GridView.requestFocusFromTouch()后为什么setSelection就不好使呢 总是选中第一条, 为什么
setSelection是设置选择项,而requestFocusFromTouch等于是模拟了一个touch事件,点击了girdview,而默认点击的地方就是第一条,点击了第一条,焦点以及selection都到第一条了,所以setSelection就没反应了。
‘柒’ android怎么在代码中设置文本框获得焦点
android中,要使控件获得焦点,需要先setFocus,再requestFocus。
以Button为例:
btn.setFocusable(true);
btn.setFocusableInTouchMode(true);
btn.requestFocus();
btn.requestFocusFromTouch();
‘捌’ android 中如何设置焦点的位置。
设置焦点需要以下几步:
1,打开手机相机,进入设置,打开焦点功能。
2,进入拍照页面,双击屏幕的一个地方,相机就会自动锁定焦点。
3,焦点会带有两个锁定框,一个锁定,一个可以拖动。
4,锁定在屏幕上的锁定框就是焦点,可移动的是进行焦距调节。
多数相机的焦距处理并不明显,直接移动焦点效果会好些。
‘玖’ android多个输入框,在启动程序的时候,自动聚焦在第一个,该如何实现
android中,要使控件获得焦点,需要先setFocus,再requestFocus。
以Button为例:
btn.setFocusable(true);
btn.setFocusableInTouchMode(true);
btn.requestFocus();
btn.requestFocusFromTouch();
‘拾’ android开发怎么让edittext无法获取焦点
在android项目中,一进入一个页面, EditText默认就会自动获取焦点。使用如下的方法可以让EditText无法获取焦点。
解决之道:在EditText的父级控件中设置下面的属性
Android:focusable="true"
android:focusableInTouchMode="true"
在window7平台,android studio开发工具下,步骤如下。
1、打开android sutdio并创建一个项目,如下图: