Difference between revisions of "Dynamic List Activity"
From John Freier
(Created page with 'package com.johnfreier.dailyfactorcrap; import java.util.ArrayList; import com.johnfreier.utilities.URLUtils; import android.app.ListActivity; import android.app.ProgressDialo…') |
|||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | This is some example code to use ArrayList and attach it to the List view using the ArrayAdapter. | |
− | + | One thing I didn't know, is you could use ArrayList. | |
− | + | When you change the data in the ArrayList use adapter.notifyDataSetChanged() to update the list. | |
− | + | public class TopActivity extends ListActivity | |
− | + | { | |
− | + | private ArrayAdapter<String> adapter; | |
− | + | private ArrayList<String> list; | |
− | + | ||
+ | public void onCreate(Bundle savedInstanceState) | ||
+ | { | ||
+ | super.onCreate(savedInstanceState); | ||
+ | |||
+ | this.list = new ArrayList<String>(); | ||
+ | adapter = new ArrayAdapter<String>(this, R.layout.top, this.list); | ||
+ | setListAdapter(adapter); | ||
+ | |||
+ | //not for sure if I need the below. | ||
+ | //ListView lv = getListView(); | ||
+ | //lv.setTextFilterEnabled(true); | ||
+ | |||
+ | addItem(); | ||
+ | |||
+ | } | ||
+ | |||
+ | public void addItem() | ||
+ | { | ||
+ | this.list.add("Two"); | ||
+ | adapter.notifyDataSetChanged(); | ||
+ | } | ||
+ | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | Your Layout should look like this... | ||
+ | <?xml version="1.0" encoding="utf-8"?> | ||
+ | <TextView xmlns:android="http://schemas.android.com/apk/res/android" | ||
+ | android:layout_width="fill_parent" | ||
+ | android:layout_height="fill_parent" | ||
+ | android:padding="10dp" android:textStyle="bold" android:textSize="20sp" android:textColor="#ffffff"> | ||
+ | </TextView> | ||
− | + | '''Error''' - If you get the error, something along the lines of R.id.list is not in the content. Remove the setContentView method, you don't need it | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + |
Latest revision as of 09:21, 6 July 2011
This is some example code to use ArrayList and attach it to the List view using the ArrayAdapter.
One thing I didn't know, is you could use ArrayList.
When you change the data in the ArrayList use adapter.notifyDataSetChanged() to update the list.
public class TopActivity extends ListActivity { private ArrayAdapter<String> adapter; private ArrayList<String> list; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); this.list = new ArrayList<String>(); adapter = new ArrayAdapter<String>(this, R.layout.top, this.list); setListAdapter(adapter); //not for sure if I need the below. //ListView lv = getListView(); //lv.setTextFilterEnabled(true); addItem(); } public void addItem() { this.list.add("Two"); adapter.notifyDataSetChanged(); } }
Your Layout should look like this...
<?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dp" android:textStyle="bold" android:textSize="20sp" android:textColor="#ffffff"> </TextView>
Error - If you get the error, something along the lines of R.id.list is not in the content. Remove the setContentView method, you don't need it