저는 스크립트에서 배우의 연습을 돕기 위해 Android 앱을 만듭니다. 사용자는 스크립트에서 캐릭터를 선택하여 리허설 할 수 있습니다. 스크립트는 선택한 캐릭터의 첫 번째 줄까지 사용자에게 표시됩니다. 사용자가 계속 진행하기로 결정하면 현재 행이 표시되고 나머지 스크립트는 다음 행까지 표시됩니다. 사용자는 다시 진행할 수 있습니다.SQLite 쿼리 - 특정 항목을 찾으면 데이터베이스에서 행을 반환하지 않습니다.
나는 전체 플레이를 SQLite 데이터베이스에 저장하고 데이터베이스에서 쿼리를 실행하여 사용자 지정 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 라인. 또한 Cursor의 각 행을 반복하여 문자의 첫 번째 줄을 식별하는 방법을 알고 있습니다. 첫 번째 라인을 찾으면 무엇을해야합니까? Cursor에서 행을 삭제할 수 없다는 인상하에있었습니다. –
Android '커서'는 쿼리의 전체 결과를 읽습니다. 따라서 결과를 제한하려면 SQL 쿼리에서이 작업을 수행해야합니다. –
좋아, 커서의 각 행을 반복하고 ArrayList에 관련 데이터를 추가했다. 일단 Cursor를 통해 점진적으로 끝나면 Listview에 ArrayList를 채 웁니다. 당신의 도움을 주셔서 감사합니다! –