setTag()
및 getTag()
을 사용하면 원하는 유형의 객체로 전달할 수 있습니다.
여기에 the reference입니다. 코멘트
에서
추가는 나는 데이터베이스를 몇 번 쿼리보다는 모든을 잡고 하나의 커서를 가지고 간단한 믿습니다.
예를 들어, 다음과 같은 열이있는 표가있는 경우 : events(_id, name, startTime, endTime, people, etc)
. 당신은 SELECT * FROM events
라고 부를 수 있습니다. 그러나 이벤트에 대한 세부 사항 만 원한다면 과도한 것으로 보입니다. SELECT _id, name FROM events
을 쿼리하여 ListView에 저장하는 것이 좋습니다. 그런 다음 가질 수 있습니다 :
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
detailCursor = database.rawQuery(`SELECT * FROM events WHERE _id = ?`, new String[] { id });
// Display this event's details somehow
}
}
보조 커서는 가장 단순합니다. 사용 된 이벤트 세부 사항에 대해 메모리를 할당하지 않으며 이러한 반복 된 마이너 쿼리로 인해 상당한 성능 손실이 발생하지 않습니다. 이와 같은 경우에는 View 태그에 아무 것도 저장하지 않으므로 일반 커서 (모든 이벤트의 ID 및 이름 포함)와 세부 커서가 필요한 모든 것을 제공해야합니다.
희망이 있습니다.
출처
2012-06-03 20:33:26
Sam
와우, 나는 그것을 놓쳤다는 것을 믿을 수 없다 !!! 고마워요! – Andy
태그를 사용하는 조금 이상하지만 좋은 방법 :) +1 –
질문이 하나 있습니다. 어떤 물건이라도 나는 왜 LOL에 관해서 혼란 스럽다. 나는 내가 그것을 가져올 때 그것을 내가 필요한 대상으로 던져야한다고 생각하지만, 나는 목록이 있다고 가설을 세운다. 내가 만드는 목록이 너무 길어지는 것은 의심 스럽지만 목록에있는 모든보기가있는 개체를 저장하는 것이 좋지 않겠습니까? 나는 성능 측면에서 말하고있는 것 같다. – Andy