Reputation: 85
I have problem i am getting my data from one activity. i want to print that using a list view. How can i do it.?
Intent intent = getIntent();
ArrayList<String> fruitSelection = intent.getStringArrayListExtra("fruits");
if (fruitSelection != null) {
// use a toast to display selected fruits
if (fruitSelection.size() > 0) {
StringBuilder sb = new StringBuilder();
sb.append("Your selection of fruits\n\n");
for (String s : fruitSelection) {
sb.append("* ").append(s).append("\n");
}
Toast toast = Toast.makeText(this, sb.toString().trim(), Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
} else {
Toast toast = Toast.makeText(this, "Nothing selected", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();}
}
}
}
Upvotes: 0
Views: 623
Reputation: 732
Assuming you're viewing the "fruit" data in another activity, set the second Activity to extend ListActivity
and set the Adapter
on the ListActivity's ListView to access the fruit array.
ListView listView = getListView();
listView.setAdapter(new ArrayAdapter<String>(this.getApplicationContext(), R.layout.list_view_item, fruitSelection);
Upvotes: 1
Reputation: 1786
Create a class that extends BaseAdapter and use .setAdapter() on your ListView.
See this for more info : http://www.vogella.com/articles/AndroidListView/article.html
Upvotes: 3
Reputation: 6108
Intent intent = getIntent();
ArrayList<String> fruitSelection = intent.getStringArrayListExtra("fruits");
ListView listView = (ListView) findViewById(R.id.listView);
ArrayAdapter<String> adapter; adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1, fruitSelection);
listView.setAdapter(adapter);
listView = (ListView) findViewById(R.id.listView);
adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1, values);
listView.setAdapter(adapter);
Upvotes: 0