2015-06-15 6 views
0
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_campaign_list); 


     Campaign campaign_data[] = new Campaign[] 
       { 
         new Campaign(R.drawable.hlbb, "MSIG HLBB PA Extra"), 
         new Campaign(R.drawable.hlbb, "MSIG HLBB SSP Plus") 
       }; 
     CampaignAdapter adapter = new CampaignAdapter(this, R.layout.listview_header_row, campaign_data); 
     listView1 = (ListView)findViewById(R.id.listView1); 
     listView1.setAdapter(adapter); 

     listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, 
            long id) { 

       String item = ((TextView)view).getText().toString(); 

       Toast.makeText(getBaseContext(), item, Toast.LENGTH_LONG).show(); 

      } 
     }); 
    } 

я могу запустить выше код без функции setonitemclicklistener, когда я добавить setOnItemClickListener, он перестал working.What это ошибка ?? Я новичок в Android..ThxAndroid ListView setOnItemClickListener

+3

Добавить свой логарифм ... !! – Nils

+0

http://stackoverflow.com/questions/7038197/android-listview-crashes – Dhaiyur

+0

ошибка печати stacktrace –

ответ

0

Я не знаю, как ваш код CampaignAdapter, но вы пытаетесь отобразить представление строки, которое вы раздуваете в TextView. Вы должны использовать свой адаптер для доступа к элементу, используя положение элемента:

CampaignAdapter adapter = new CampaignAdapter(this, R.layout.listview_header_row, campaign_data); 
    listView1 = (ListView)findViewById(R.id.listView1); 
    listView1.setAdapter(adapter); 
    listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, 
           long id) { 
      Campaign item = (Campaign) adapter.getItem(position); 
      // Now you can access to the campaing value that you want 
      // For instance, item.getText() 
      Toast.makeText(getBaseContext(), item.getText(), Toast.LENGTH_LONG).show(); 
     } 
    }); 
Смежные вопросы