2012-10-09 1 views
0

컨텍스트 메뉴를 만들려는 TextView 목록을 만들고 있습니다. 그러나 어떤 TextView에서 컨텍스트 메뉴가 호출되었는지 어떻게 알 수 있습니까?
AdapterView.AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
item.position가 선택한 항목의 위치를 ​​포함컨텍스트 메뉴 항목이 호출 된 항목의보기를 가져 오는 중

여기 당신의 MenuItem에서 필요한 모든 정보를 얻을 수 있습니다 내 코드 http://snipt.org/vfyj7

+0

위의 코드는 충돌합니다. 그러나 전문가들은 문제를 말할 수있을 것이라고 확신한다. –

답변

0

입니다.

+0

메뉴 항목을 가져올 수 있지만 여러 텍스트보기 목록 인 위젯을 원합니다. 모든 텍스트보기에서 호출 될 수 있으므로 컨텍스트 메뉴가 원래 작성된 메뉴 항목이 아닌 TextView를 어떻게 알 수 있습니까? –

+0

예를 들어 text1 text2 text3이 있고 텍스트 2를 길게 누르면 메뉴 1 메뉴 2 menu3이 표시됩니다. 메뉴 2를 선택하면 메뉴 2가 선택되었다는 정보를 가져올 수 있습니다. 그러나 텍스트 2가 선택되었음을 어떻게 알 수 있습니까? –

0

귀하의 액티비티에 대한이 특별한 오버라이드에서 클릭 한 textView의 ID를 가져온 다음 textView를 기반으로 필요한 작업을 수행 할 수 있습니다.

@Override 
    public boolean onContextItemSelected(MenuItem item) { 
     // TODO Auto-generated method stub 
     return super.onContextItemSelected(item); 

     if(item.getItemId()==R.id.textView1) { 
     //do something with 1st textview 
    }  
    else if(item.getItemId()==R.id.textView2) { 
     //do something with textview 2 
    } and so on.... 
    } 
+0

이런 종류의 일을했지만, 어떤 이유로 든 항상 첫 번째 텍스트보기의 ID를 반환합니다. –

+0

내 수정 코드는 다음과 같습니다. –

+0

http://snipt.org/vfzb4 –

관련 문제