我想创建一个页面,其中包含 X 个问题(问题存储在数据库中,我会阅读它们)、标题和最后的按钮。
当用户单击一个问题时,该问题应转换为用户可以修改问题的对话框,但其上方和下方的其他问题仍应以相同方式显示。
在 android 文档中的示例记事本应用程序中使用 ListActivity 的方式似乎该类只能显示多个相同类型的项目。
有没有直接的方法来解决这个问题?
我想创建一个页面,其中包含 X 个问题(问题存储在数据库中,我会阅读它们)、标题和最后的按钮。
当用户单击一个问题时,该问题应转换为用户可以修改问题的对话框,但其上方和下方的其他问题仍应以相同方式显示。
在 android 文档中的示例记事本应用程序中使用 ListActivity 的方式似乎该类只能显示多个相同类型的项目。
有没有直接的方法来解决这个问题?
我应该告诉你,作为用户,我不喜欢你的解决方案。我更愿意从列表中选择并在点击后进行编辑活动。这是我在每个 android 应用程序中看到的默认方法,它对你来说也会更容易。
如果你仍然想做你解释的事情,我会尝试这样做:
ListView
QuestionOrDialog
覆盖getView
做类似的事情:
QuestionOrDialog aQuestionOrDialog = getItem(position);
if ( aQuestionOrDialog.showDialog() ) {
return mInflater.inflate(R.layout.dialog, parent, false);
} else {
view = mInflater.inflate(R.layout.question, parent, false);
TextView question = (TextView) view.findViewById(R.id.question);
question.setText(aQuestionOrDialog.getQuestion());
}
OnClick
你将不得不做一个 getItem() 并设置它被点击。希望它有效。