我在自定义可扩展列表适配器中的代码如下:
public VIEw getChildVIEw(int groupposition,int childposition,boolean arg2,VIEw childVIEw,VIEwGroup parent) { switch (groupposition) { case 0: childVIEw = inflater.inflate(R.layout.edit_personal_layout,null); final EditText fname = (EditText)childVIEw.findVIEwByID(R.ID.editTextFname); fname.setonClickListener(new OnClickListener() { public voID onClick(VIEw arg0) { // Todo auto-generated method stub fname.setFocusable(true); } }); break; case 1: childVIEw = inflater.inflate(R.layout.edit_experIEnce_layout,null); break; case 2: childVIEw = inflater.inflate(R.layout.edit_qualification_layout,null); break; case 3: childVIEw = inflater.inflate(R.layout.edit_login_layout,null); break; case 4: childVIEw = inflater.inflate(R.layout.edit_other_layout,null); break; } return childVIEw;}public VIEw getGroupVIEw(int position,boolean arg1,VIEw vIEw,VIEwGroup parent) { if(vIEw==null) { vIEw = inflater.inflate(R.layout.edit_head,null); } TextVIEw head = (TextVIEw)vIEw.findVIEwByID(R.ID.List_item_text_vIEw_head); head.setText(menu[position]); return vIEw;}解决方法 1)可能是你的editText没有得到焦点,这就是为什么你不能输入任何东西.尝试使用以下行播放到xml-layout文件中.
androID:descendantFocusability="blocksDescendants"
有关将焦点放在子元素上的更多信息,请参阅此link.
2)如果上述解决方案无法正常工作,您可以尝试在列表视图中添加.
<ListVIEw androID:ID="@androID:ID/List" androID:layout_height="fill_parent" androID:layout_wIDth="fill_parent" androID:descendantFocusability="beforeDescendants" />
并更改mainfest.xml中的活动:
<activity androID:name= ".yourActivity" androID:windowsoftinputMode="adjustPan"/>
3)如果仍然无法工作,那么看看这个link (focusable-edittext-inside-listview)和link.
希望这能解决你的问题.
总结以上是内存溢出为你收集整理的android – 无法在expandable listview中输入edittext全部内容,希望文章能够帮你解决android – 无法在expandable listview中输入edittext所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)