2010-07-18 2 views
3

표시된대로 클릭 이벤트가 내 listview에 연결됩니다.목록보기의 텍스트보기에서 값을 얻으려고 시도합니다. android의 클릭 이벤트를 클릭하십시오.

int[] GenusListIDs = { R.id.txt_ID, R.id.txt_Genus, R.id.txt_Count }; 
     SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.genusitem, cursor_genuslist, service.GenusListColumns, GenusListIDs); 

     ListView list_Genus = (ListView)findViewById(R.id.list_Genus); 
     list_Genus.setAdapter(adapter); 
     list_Genus.setOnItemClickListener(new OnItemClickListener(){ 
      @Override 
      public void onItemClick(AdapterView parent, View view, int position, long id) 
      { 
       try 
       { 
        Log.println(1, "ItemClick", view.toString()); 
        TextView tv = (TextView)view; 
        String genus = (String) tv.getText(); 
        Intent i = new Intent(getBaseContext(), Cat_Species.class);//new Intent(this, Total.class); 
        /*view 
        i.putExtra("id", id);*/ 
        startActivity(i); 
       } 
       catch(Exception ex) 
       { 
        Log.println(1, "item-click-event", ex.getMessage()); 
       } 
      } 
     }); 

내가 클릭 한 listitem을 기반으로 새 인 텐트에 문자열 매개 변수를 전달해야합니다. 전달하고자하는 값은 txt_Genus라는 listitem에 있습니다. 그 값을 목록에 남겨서 의도에 전달하려면 어떻게해야합니까? 내 실험에 신경 쓰지 마 하하.

답변

5

이렇게해야합니다.

TextView tv = (TextView)view.findViewById(R.id.txt_Genius); 
String genus = tv.getText().toString(); 

그런 다음 인트 트 엑스트라에 넣으십시오.이 비트를 이미 알고 있다고 생각합니다.

i.putExtra("genius", genius); 

편집;

새로운 활동에서 의도에 액세스하고 추가 번들을 받으십시오. 다음과 같이 이전 활동의 의도에 배치 한 모든 항목에 액세스 할 수 있습니다.

Bundle extras = getIntent().getExtras(); 
String genius = extras.getString("genius"); 
// pop some toast to show the value of genius - not required but shows it works :) 
Toast.makeText(this, "Genius value: " + genius, Toast.LENGTH_SHORT).show(); 
+0

굉장, 고마워. 내가 필요한 것. 이제 어떻게하면 내 새 활동에 대한 onCreate 메소드에서 그 가치를 얻을 수 있습니까? –

+0

답변이 업데이트되었습니다. Damon –

+0

고맙습니다. :) :) :) :) –

관련 문제