| page.title=Hello, ListView |
| @jd:body |
| |
| <p>A {@link android.widget.ListView} is a View that shows items in a vertically scrolling list. The items are |
| acquired from a {@link android.widget.ListAdapter}.</p> |
| |
| |
| <ol> |
| <li>Start a new project/ListActivity called HelloListView.</li> |
| <li>Open the HelloListView Java file. Make the class extend ListActivity (instead of Activity). |
| <pre>public class HelloListView extends ListActivity {</pre> |
| </li> |
| <li>Insert the following for the <code>onCreate()</code> method: |
| <pre> |
| @Override |
| public void onCreate(Bundle savedInstanceState) { |
| super.onCreate(savedInstanceState); |
| |
| setListAdapter(new ArrayAdapter<String>(this, |
| android.R.layout.simple_list_item_1, COUNTRIES)); |
| getListView().setTextFilterEnabled(true); |
| } |
| </pre> |
| <p>Notice that we don't need to load a layout (at least, not in this case, because we're using |
| the whole screen for our list). Instead, we just call <code>setListAdapter()</code> (which automatically |
| adds a ListView to the ListActivity), and provide it with an ArrayAdapter that binds a |
| <code>simple_list_item_1</code> layout item to each entry in the <code>COUNTRIES</code> |
| array (added next). The next line of code adds a text filter to the ListView, so that when the user |
| begins typing, the list will filter the entire view to display only the items that match the entry.</p> |
| </li> |
| <li>Following the <code>onCreate()</code> method, add the String array: |
| <pre> |
| static final String[] COUNTRIES = new String[] { |
| "Afghanistan", "Albania", "Algeria", "American Samoa", "Andorra", |
| "Angola", "Anguilla", "Antarctica", "Antigua and Barbuda", "Argentina", |
| "Armenia", "Aruba", "Australia", "Austria", "Azerbaijan", |
| "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium", |
| "Belize", "Benin", "Bermuda", "Bhutan", "Bolivia", |
| "Bosnia and Herzegovina", "Botswana", "Bouvet Island", "Brazil", "British Indian Ocean Territory", |
| "British Virgin Islands", "Brunei", "Bulgaria", "Burkina Faso", "Burundi", |
| "Cote d'Ivoire", "Cambodia", "Cameroon", "Canada", "Cape Verde", |
| "Cayman Islands", "Central African Republic", "Chad", "Chile", "China", |
| "Christmas Island", "Cocos (Keeling) Islands", "Colombia", "Comoros", "Congo", |
| "Cook Islands", "Costa Rica", "Croatia", "Cuba", "Cyprus", "Czech Republic", |
| "Democratic Republic of the Congo", "Denmark", "Djibouti", "Dominica", "Dominican Republic", |
| "East Timor", "Ecuador", "Egypt", "El Salvador", "Equatorial Guinea", "Eritrea", |
| "Estonia", "Ethiopia", "Faeroe Islands", "Falkland Islands", "Fiji", "Finland", |
| "Former Yugoslav Republic of Macedonia", "France", "French Guiana", "French Polynesia", |
| "French Southern Territories", "Gabon", "Georgia", "Germany", "Ghana", "Gibraltar", |
| "Greece", "Greenland", "Grenada", "Guadeloupe", "Guam", "Guatemala", "Guinea", "Guinea-Bissau", |
| "Guyana", "Haiti", "Heard Island and McDonald Islands", "Honduras", "Hong Kong", "Hungary", |
| "Iceland", "India", "Indonesia", "Iran", "Iraq", "Ireland", "Israel", "Italy", "Jamaica", |
| "Japan", "Jordan", "Kazakhstan", "Kenya", "Kiribati", "Kuwait", "Kyrgyzstan", "Laos", |
| "Latvia", "Lebanon", "Lesotho", "Liberia", "Libya", "Liechtenstein", "Lithuania", "Luxembourg", |
| "Macau", "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands", |
| "Martinique", "Mauritania", "Mauritius", "Mayotte", "Mexico", "Micronesia", "Moldova", |
| "Monaco", "Mongolia", "Montserrat", "Morocco", "Mozambique", "Myanmar", "Namibia", |
| "Nauru", "Nepal", "Netherlands", "Netherlands Antilles", "New Caledonia", "New Zealand", |
| "Nicaragua", "Niger", "Nigeria", "Niue", "Norfolk Island", "North Korea", "Northern Marianas", |
| "Norway", "Oman", "Pakistan", "Palau", "Panama", "Papua New Guinea", "Paraguay", "Peru", |
| "Philippines", "Pitcairn Islands", "Poland", "Portugal", "Puerto Rico", "Qatar", |
| "Reunion", "Romania", "Russia", "Rwanda", "Sqo Tome and Principe", "Saint Helena", |
| "Saint Kitts and Nevis", "Saint Lucia", "Saint Pierre and Miquelon", |
| "Saint Vincent and the Grenadines", "Samoa", "San Marino", "Saudi Arabia", "Senegal", |
| "Seychelles", "Sierra Leone", "Singapore", "Slovakia", "Slovenia", "Solomon Islands", |
| "Somalia", "South Africa", "South Georgia and the South Sandwich Islands", "South Korea", |
| "Spain", "Sri Lanka", "Sudan", "Suriname", "Svalbard and Jan Mayen", "Swaziland", "Sweden", |
| "Switzerland", "Syria", "Taiwan", "Tajikistan", "Tanzania", "Thailand", "The Bahamas", |
| "The Gambia", "Togo", "Tokelau", "Tonga", "Trinidad and Tobago", "Tunisia", "Turkey", |
| "Turkmenistan", "Turks and Caicos Islands", "Tuvalu", "Virgin Islands", "Uganda", |
| "Ukraine", "United Arab Emirates", "United Kingdom", |
| "United States", "United States Minor Outlying Islands", "Uruguay", "Uzbekistan", |
| "Vanuatu", "Vatican City", "Venezuela", "Vietnam", "Wallis and Futuna", "Western Sahara", |
| "Yemen", "Yugoslavia", "Zambia", "Zimbabwe" |
| }; |
| </pre> |
| </li> |
| <li> Run it.</li> |
| </ol> |
| <p>You can scroll the list, or type to filter it. You should see something like this:</p> |
| <img src="images/hello-listview.png" width="150px" /> |
| |
| <h3>References</h3> |
| <ul> |
| <li>{@link android.widget.ListView}</li> |
| <li>{@link android.widget.ListAdapter}</li> |
| </ul> |
| |
| <p><a href="{@docRoot}guide/tutorials/views/hello-views-index.html">← Back to Hello Views</a></p> |