【问题标题】:Why edittext reload listview?为什么edittext重新加载listview?
【发布时间】:2018-09-08 17:17:29
【问题描述】:

我在列表视图中有编辑文本,当编辑文本成为焦点时,它会重新加载/刷新列表视图。

public class MyActivity extends AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        ListView lv = new ListView(getApplicationContext());
        setContentView(lv);
        lv.setAdapter(new MyAdapter(getApplicationContext()));
     }
}

和:

public class MyAdapter extends BaseAdapter {

private Context context;
public ArrayList myItems = new ArrayList();

public MyAdapter(Context context) {
    this.context = context;
    for (int i = 0; i < 20; i++) {
        LauncherActivity.ListItem listItem = new LauncherActivity.ListItem();
        myItems.add(listItem);
    }
}

@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
    convertView = LayoutInflater.from(context).inflate(R.layout.temp, null);
    return convertView;
}

}

为什么要生产这个? 以及如何预防?

09-08 19:38:59.913 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 finishComposingText 09-08 19:39:00.044 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 getExtractedText 09-08 19:39:00.058 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 getTextBeforeCursor 09-08 19:39:00.089 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 getExtractedText 09-08 19:39:00.101 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 getTextBeforeCursor 09-08 19:39:00.167 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 finishComposingText 09-08 19:39:00.267 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 getExtractedText 09-08 19:39:00.281 14702-14702/com.infinity.passwordmanager W/IInputConnectionWrapper:非活动 InputConnection 上的 getTextBeforeCursor

【问题讨论】:

  • 屏幕刷新时请分享logcat
  • 什么是 ListItem?而且您的 setAdapter() 参数与您发布的 Adapter 类不匹配。
  • 添加的日志和错误的 C/P

标签: java android listview android-edittext


【解决方案1】:

要记录或者 Toast 在视图点击之前或之后发生的事情,实现

LoaderManager.LoaderCallbacks<Cursor> 

在你的

MyActivity 

但首先您必须扩展 ListActivity,这不是问题,因为您的整个 Activity 都被 ListView 占用。 这将使您更接近问题所在,因为我们受到您的日志发布的信息量的限制

https://developer.android.com/guide/topics/ui/layout/listview#java

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-06
    • 2014-05-18
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-12
    相关资源
    最近更新 更多