2015-09-04 2 views
2

Я успешно добавил изображения из списка ListView в подробный вид, когда нажимается элемент в списке. Но как бы добавить более длинные описания (которые не будут отображаться в список, но только появляется в TextView в single_list_item XML? Вот мой текущий код для отправки изображений (строка «веб» является короткими текстовыми описаниями, строка ImageID список изображений) на мой SingleListItem.java.Как передать ListView выбранные значения элемента в другое действие

setContentView(R.layout.hotels); 

CustomList adapter = new CustomList(Hotels.this, web, imageId); 
list=(ListView)findViewById(R.id.list); 
list.setAdapter(adapter); 
list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> parent, View view, 
          int position, long id) { 
     ImageView imgview = (ImageView) view.findViewById(R.id.img); 
     //int images = imgview.getId(); 
     int images = position; 
     //int images = parent.getAdapter().getItem(position); 
     //Toast.makeText(MainActivity.this, "You Clicked at " +web[+ position], Toast.LENGTH_SHORT).show(); 
     Intent i = new Intent(getApplicationContext(), SingleListItem.class); 
     //i.putExtra("zurag", images); 
     i.putExtra("zurag", imageId[position]); 
     startActivity(i); 
    } 
}); 

А вот мой текущий код в SingleListItem.java:

public class SingleListItem extends Activity{ 
    Button button; 
    Button button2; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     this.setContentView(R.layout.single_list_item_view); 

     ImageView images = (ImageView) findViewById(R.id.imageView1); 
     Intent i = getIntent(); 
     int pic =i.getIntExtra("zurag", 0); 
     images.setImageResource(pic); 
     TextView texts = (TextView) findViewById(R.id.textView1); 
     Intent i2 = getIntent(); 
     int text1 =i2.getIntExtra("zurag", 0); 
     texts.setText(text1); 

     addListenerOnButton(); 
    } 
} 

Может ли кто-нибудь показать, как я отправляю более длинный текст, например, с строки longdesc?

+1

так же, как 'i.putExtra ("longdesc", longdesc); ' – Rustam

+1

же вы можете передать текст в список item class через намерение и получить текст и показать его с помощью многострочного текстового поля i.putExtra ("variablename", "msg"); –

ответ

4
Intent i = new Intent(getApplicationContext(), SingleListItem.class); 
      i.putExtra("str", longdesc); 
      i.putExtra("zurag", imageId[position]); 
      startActivity(i); 

в singlelistitem классе

Intent i = getIntent(); 
     Intent i2 = getIntent(); 
     String text1 =i2.getStringExtra("str"); 
     texts.setText(text1); 
1

отправки строки:

i.putExtra("longdesc", longdesc); 

чтение строки в пункте назначения:

String longdesc = i.getStringExtra("longdesc"); 
Смежные вопросы