2013-01-21 4 views
2

나는 여러 listview가 런타임에 작성된 뷰가있는 proyect를 수행하고 있으며 모든 listview는 데이터베이스의 특정 행을로드합니다. 나는 contextmenu를 구현하고 싶다. 문제는 어떻게 데이터베이스의 ID retieve listview 행을 얻을 수 있습니까? 컨텍스트 메뉴에서 내 목록 어댑터를 가져올 수 있습니까? 또는 다른 솔루션. 감사! 여기 은 ... 당신의 onContextItemSelected에서 당신이 제대로 데이터베이스를 설정하면 그냥이 info.id;을 할 수listview 행 가져 오기 onContextItemSelected

private void makeView(){ 

    yearsArray = db.getUniqueYears(TABLE_NAME); 

    for (int i = 0; i < yearsArray.size() ; i++){ 

     list = db.getDocByYear(TABLE_NAME, yearsArray.get(i)); 
     custom_adapter = new Document_adapter(this, list); 
     ListView lv = new ListView(this); 
     lv.setAdapter(custom_adapter); 
     lv.setBackgroundResource(R.drawable.title_container_bg); 
     registerForContextMenu(lv); 

     } 
} 
@Override 
public void onCreateContextMenu(ContextMenu menu, View v, 
     ContextMenuInfo menuInfo) { 
    super.onCreateContextMenu(menu, v, menuInfo); 

    MenuInflater mi = getMenuInflater(); 
    mi.inflate(R.menu.doc_options, menu); 


} 

    @Override 
public boolean onContextItemSelected(MenuItem item) { 
    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); 

    /* 

      */ 


    return super.onContextItemSelected(item); 
} 

답변

4

코드의 일부이며 그

+0

이 실제로는 완벽하게 작동 데이터베이스 ID를 제공, 감사합니다! 내 부분의 총 초보자. – Fede