gpt4 book ai didi

ListView 中的 Android EditText - 键盘

转载 作者:IT老高 更新时间:2023-10-28 23:10:01 26 4
gpt4 key购买 nike

我的 EditText 有问题。我使用以下适配器:

public class RowTextViewAdapter extends BaseAdapter {

...

public View getView(int position, View convertView, ViewGroup parent) {

ViewHolder holder = null;

if (rowTitles.get(position).equals("edit")) {
if(et == null){
et = new EditText(activity);
et.setText("Test");
}
return et;
}
else {
convertView = new TextRow(activity);
holder = new ViewHolder(((TextRow) convertView).getTextView(), ((TextRow) convertView).getImageView());
convertView.setTag(holder);
holder.getTextView().setText(StringManager.getInstance().getText(rowTitles.get(position), activity));
holder.getImageView().setImageBitmap(assetController.getBitmap(additiveIcons.get(position) + ".png", null));
return convertView;
}
}
}

ListActivity:

public class AppSettingActivity extends ListActivity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

adapter = new RowTextViewAdapter(this);
adapter.addRowView("account", "arrowDw");
adapter.addRowView("password", "arrowDw");
setListAdapter(adapter);
}

...

protected void onListItemClick(ListView listView, View view, int position, long id) {
switch (position) {
case 0: accIsEditable = adapter.setEditable(position); break;
case 1:
if(accIsEditable) {
//TODO do something..
break;
}
pwIsEditable = adapter.setEditable(position);
break;
...
}
}

如果我单击第一项,我会在 pos 上添加一个新的列表项。 1(位置:0、1、2、...)。现在 EditText 字段已添加到列表中。

ListView:
---------------------------- -------------------------
Account v Account ^
---------------------------- ==> -------------------------
Passowrd v [::::::::EditText:::::::]
---------------------------- -------------------------
//more.. Password v
---------------------------- -------------------------
//more..
-------------------------

如果我现在单击 EditText 字段,它会显示虚拟键盘并失去 EditText 的焦点。我再次单击它并获得焦点。但是如果我写东西,文本只会显示在 EditText 字段中,如果我在写的时候不经常点击它...

有解决这个更新问题的想法吗?

最佳答案

如果这仍然是一个问题,请查看以下项目:Focusable EditText inside ListView

这些更改可能会有所帮助。

更改为 ListView :

<ListView
android:id="@android:id/list"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:descendantFocusability="beforeDescendants"
/>

更改为 mainfest.xml 中的 Activity :

<activity android:name= ".yourActivity" android:windowSoftInputMode="adjustPan"/>

关于ListView 中的 Android EditText - 键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8258692/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com