android 怎样使gridview不自动获取焦点
答案:1 悬赏:50 手机版
解决时间 2021-02-03 17:22
- 提问者网友:记得曾经
- 2021-02-03 12:00
android 怎样使gridview不自动获取焦点
最佳答案
- 五星知识达人网友:拾荒鲤
- 2021-02-03 13:11
我设置的gridview的item是textview和edittext两部分组成,
然后一开始在gridadapter(override baseadapter)中设定的:
edittext.setfocusable(true);
edittext.requestfocus();
而要求改成点击item edittext就可以获取焦点,之前我在activity里面onitemclick直接没有写,现在要写的话,需要改动以下几个地方:
在gridviewitem的xml文件里,对edittext的设置
android:focusable="false"android:focusableInTouchMode="false"
然后再gridview的activity里面,给griditem添加上监听事件:
gridView.setOnItemClickListener(new OnItemClickListener() { @Override
public void onItemClick(AdapterView> parent, View view,
int position, long id)
{ EditText edittext = (EditText) view.findViewById(R.id.grid_edittext);
edittext.setFocusable(true); edittext.setFocusableInTouchMode(true);
if (edittext.requestFocus())
{
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(edittext, InputMethodManager.SHOW_IMPLICIT); }
} });
然后一开始在gridadapter(override baseadapter)中设定的:
edittext.setfocusable(true);
edittext.requestfocus();
而要求改成点击item edittext就可以获取焦点,之前我在activity里面onitemclick直接没有写,现在要写的话,需要改动以下几个地方:
在gridviewitem的xml文件里,对edittext的设置
android:focusable="false"android:focusableInTouchMode="false"
然后再gridview的activity里面,给griditem添加上监听事件:
gridView.setOnItemClickListener(new OnItemClickListener() { @Override
public void onItemClick(AdapterView> parent, View view,
int position, long id)
{ EditText edittext = (EditText) view.findViewById(R.id.grid_edittext);
edittext.setFocusable(true); edittext.setFocusableInTouchMode(true);
if (edittext.requestFocus())
{
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(edittext, InputMethodManager.SHOW_IMPLICIT); }
} });
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯