我正在尝试为光标中的每个项目显示一个新的吐司,我该怎么做?我已经搜索了SO,但是找不到任何相关的,有用的答案。这是我的代码,但是不起作用:
while(mNotesCursor.moveToNext()){
Toast.makeText(getActivity(),
mNotesCursor.getString(mNotesCursor.getColumnIndex("title")),
Toast.LENGTH_LONG).show();
}
最佳答案
在游标中进行迭代时敬酒不是最好的主意。原因如下:
您正在使用LENGTH_LONG
,这意味着吐司将持续约3秒钟。
而您的for循环可能会在不到一秒钟的时间内完成执行。因此,烤面包将按顺序显示,但它们过渡得太慢,以至于没有意义。
因此,我建议您在警报对话框或活动本身中显示内容,以便用户可以从内容中获得更多的含义。
编辑:
我假设您正在主线程上执行此操作。
LinearLayout root = (LinearLayout) getActivity().findviewById(R.id.rootLayout);
while(mNotesCursor.moveToNext()){
TextView tv = new TextView(getActivity());
tv.setText(mNotesCursor.getString(mNotesCursor.getColumnIndex("title")));
root.addView(tv);
}