O'Reilly logo

Android Application Development For Dummies, 2nd Edition by Donn Felker, Michael Burton

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Completing Your List Fragment

The ListFragment class displays a list of items by binding to a data source such as an array or a cursor, and it exposes callback methods when the user selects an item. However, to build a list of items to display in a list, you need to add a layout that defines what each row will look like.

A cursor provides random read and write access to the result set that’s returned by a database query.

Add a new layout to the res/layout directory with a root element of TextView, and give it a proper name for a row type of item; for example, reminder_row.xml. Inside this view, type the following code:

<?xml version=”1.0” encoding=”utf-8”?>

<TextView

xmlns:android=”http://schemas.android.com/apk/res/android”

android:id=”@+id/text1” →4

android:layout_width=”fill_parent”

android:layout_height=”fill_parent”

android:padding=”10dip”/>

This code simply defines a row in which text values can be placed with a padding of ten density-independent pixels. Line 4 defines the ID of the view that you need when loading the list with data.

tip.eps The view you added is provided out of the box in the Android system. If you look at the Android documentation under Android.R.layout under simple_list_item_1 and inspect it via the Android source control repository, you can see virtually the same XML definition. The source can be found at

https://github.com/android/platform_frameworks_base/blob/master/core/res/res/layout/simple_list_item_1.xml ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required