첫 번째 질문은 어떤 발가락 :안드로이드 ListView에 다 대다 관계 SO, 내가 밟고있어 있으면 알려 주시기 바랍니다 수
이 내 데이터베이스의 단순화 된 버전입니다 :
CREATE TABLE products (_id INTEGER PRIMARY KEY, name STRING);
CREATE TABLE product_tag (product_id INTEGER, tag STRING, PRIMARY KEY(product_id, tag));
내 활동 중 하나에서 행에 포함 된 모든 태그 (예 : 제품 당 한 행)를 나열하고 싶습니다. 나는 생각했다
bananas [yellow] [fruit]
ketchup [condiment] [red] [tomato]
mustard [yellow] [condiment]
옵션은 다음과 같습니다
각 태그에 대한 뷰를 만들고에 삽입 프로그래밍 각 행의
ViewBinder
에product_tag
를 쿼리, 모든products
을 목록에 SimpleCursorAdapter를 사용하고, 열.쿼리 당 태그 당 하나의 행 (또는 태그가없는 제품 당 하나의 행)을 생성하고 수동으로 목록을 채 웁니다. 이것은 더 복잡하고 해킹 된 것처럼 보이고 일부 데이터를 복제하지만
products
의 각 행에 대해 db를 쿼리하는 것을 피합니다.
안드로이드에 대한 경험이 많은 사람이 이것을 수행하는 가장 효율적인 방법에 대해 의견을 말할 수 있다면 좋겠어요! 미리 감사드립니다.