1
我正在创建一个Android应用程序,以帮助演员从脚本中排练。用户可以从脚本中选择一个字符进行排练。该脚本将会显示给用户,直到他选中的角色的第一行。当用户决定继续时,他们的当前行将会出现,以及脚本的其余部分直到他们的下一行。用户可以重新开始等等。SQLite查询 - 一旦找到特定项目,停止从数据库返回行
我把整个游戏存储在一个SQLite数据库中,并通过在数据库上执行查询来填充自定义ListViews。
我的问题是我们如何在数据库上执行查询,但是一旦找到某个项目(例如角色的名字)就停止返回项目?我存储结果到一个光标,然后用下面的方法填充ListView:
private void fillData() {
mFrom = new String[] { PlayDbAdapter.KEY_CHARACTER,
PlayDbAdapter.KEY_LINE };
mTo = new int[] { R.id.textCharacter, R.id.textLine };
// Now create an array adapter and set it to display using our row
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
R.layout.play_list_layout, mCursor, mFrom, mTo);
setListAdapter(adapter);
}
如果你不再需要的信息或代码,请让我知道。
谢谢!
关于你的第一点,我有一个方法,从脚本返回一个页面,其中包含约。 20行。我也知道如何遍历游标的每一行并确定角色的第一行。尽管下一次我找到第一行后我该怎么办?我的印象是你不能从光标中删除行。 –
Android'Cursor's读取查询的整个结果,因此如果要限制结果,则必须在SQL查询中执行此操作。 –
好的,我所做的是遍历游标中的每一行,并将相关数据添加到ArrayList。一旦我完成了通过Cursor递增,我使用ArrayList填充Listview。谢谢你的帮助! –