我的第一个活动包含一个ListView,它从数据库中获取项目列表。 在OnClickListener中,有一个新的活动可以从数据库中获取与问题相关的所有信息,我将它们放入Intent附加组件并将它们放入下一个活动中:
public void onItemClick(AdapterView<?> parent, View view, int i, long l) {
String quest = (String) parent.getAdapter().getItem(i);
int pos = lst.getCheckedItemPosition();
Intent inte = new Intent(view.getContext(),Reponse.class);
cursor = db.rawQuery("SELECT * FROM "+ ModelHelper.TABLE_QUESTION + " WHERE " + ModelHelper.KEY_QUESTION + " = ? ",new String[] {quest});
if (cursor != null)
if (cursor.getCount() > 0) {
cursor.moveToFirst();
String repA = cursor.getString(cursor.getColumnIndex(ModelHelper.KEY_PROFIL_WAITEDANSWER));
String cible = cursor.getString(cursor.getColumnIndex(ModelHelper.KEY_PROFIL_CIBLE));
String plan = cursor.getString(cursor.getColumnIndex(ModelHelper.KEY_PLANACT));
int ID = cursor.getColumnIndex(ModelHelper.KEY_ID_QUESTION);
inte.putExtra("question", quest);
inte.putExtra("repo", repA);
inte.putExtra("cible", cible);
inte.putExtra("plan", plan);
// inte.putExtra("id", ID);
// inte.putExtra("pos", pos);
startActivity(inte);
finish();
在info活动中,它很简单,我可以从数据库中获取信息,这里是代码
Intent intent = getIntent();
String question = intent.getStringExtra("question");
String repo = intent.getStringExtra("repo");
String cible = intent.getStringExtra("cible");
String plan = intent.getStringExtra("plan");
final int[] ID = {0};
ID[0] = intent.getIntExtra("ID", ID[0]);
int pos = 0;
pos = intent.getIntExtra("pos",pos);
txtq.setText(question);
txtr.setText(repo);
txtc.setText(cible);
txtp.setText(plan);
我想添加一个按钮NEXT,通过刷新同一页面使其显示在列表中的下一个项目而不返回列表并再次单击。 我试图在意图中获得该位置,并尝试在按钮中设置一个新的OnClickListener来设置position = position +1,但它不起作用。 有什么想法吗?
答案 0 :(得分:0)
第一个解决方案
为此,您必须将整个列表传递给下一个活动,这样您就可以通过刷新同一页面直接执行列表中的下一个项目而无需返回。
第二个解决方案。
您必须单独为下一个信息页面应用查询,然后单击下一个/上一个按钮。
答案 1 :(得分:0)
你只需要通过sql查询
select * from table where key=primaryKey limit Page_Limit offset Start_From
您需要在选择列表限制时更改limit
和offset
。