как вызвать новое представление класса по щелчку элемента списка в просмотре списка?

1

Я разрабатываю приложение в android, для которого я должен вызвать класс при щелчке элемента в списке view.i разработали классы для него, но при щелчке вид класса не вызывается. Я не понимаю, почему?

вот мой код для класса, который будет называться

public void onItemClick(AdapterView parent, View v, int position, long id)
     {
         Log.i(tag,"item clicked! [" + feed.getItem(position).getTitle() + "]");

         Intent itemintent = new Intent(this,ShowDescription.class);

         Bundle b = new Bundle();
         b.putString("title", feed.getItem(position).getTitle());
         b.putString("description", feed.getItem(position).getDescription());
         b.putString("link", feed.getItem(position).getLink());
         b.putString("pubdate", feed.getItem(position).getPubDate());

         itemintent.putExtra("android.intent.extra.INTENT", b);

         startSubActivity(itemintent,0);
     }


    private void startSubActivity(Intent itemintent, int i) {
        // TODO Auto-generated method stub

    }

и thanx заранее

Теги:
listview

2 ответа

0
listview.setOnItemClickListener(new OnItemClickListener() {

                @Override
                public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                        long arg3) {


                    Intent arDetail = new Intent(this,ShowDescription.class);
                    arDetail.putString("title", feed.getItem(position).getTitle());
    arDetail.putString("description", feed.getItem(position).getDescription());
    arDetail.putString("link", feed.getItem(position).getLink());
   arDetail.putString("pubdate", feed.getItem(position).getPubDate());
                    startActivity(arDetail);

                }
            });
0

Измените свой код на

public void onItemClick(AdapterView parent, View v, int position, long id)
{
ListView feed = (ListView) findViewById(R.id.yourID);
Intent itemintent = new Intent(this,ShowDescription.class);

 itemintent.putExtra("title", feed.getItemAtPosition(position).getTitle());
 itemintent.putExtra("description", feed.getItemAtPosition(position).getDescription());
 itemintent.putExtra("link", feed.getItemAtPosition(position).getLink());
 itemintent.putExtra("pubdate", feed.getItemAtPosition(position).getPubDate());

 startActivity(itemintent);

}

Я надеюсь, что "фид" - это ваш ListView. Когда вы хотите получить значения в следующем упражнении, используйте следующее: -

 Bundle extra= getIntent().getExtras();
 String title = extra.getString("title");
 String description = extra.getString("description");
 String link = extra.getString("link");
 String pubdate = extra.getString("pubdate");

Это поможет.. Ответьте, если проблема по-прежнему сохраняется.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню