Android Programming




         Lesson 3
Using Selection Widgets

       NGUYEN The Linh
Android Programming


Contents

     1     Introducing Adapters

     2     Using Selection Widgets


     3     Exercise 3




                          2
Android Programming


Using Selection Widgets




         Introducing Adapters




                  3
Android Programming


Introducing Adapters

 Adapters are bridging classes that bind data to user-
  interface Views.
 Using ArrayAdapter
    The ArrayAdapter is a generic class that binds AdapterViews to an array of
     objects.

    By default, the ArrayAdapter binds the toString() value of each object to a
     TextView control defined within a layout.

    To apply an Adapter to an AdapterView-derived class, you call the View’s
     setAdapter() method, passing in an Adapter instance, as shown in the snippet
     below:

                                         4
Android Programming


Introducing Adapters

 Using ArrayAdapter (cont.)




                         5
Android Programming


Introducing Adapters

 Example 3.1
    Using Basic ArrayAdapter
    Example 3.1 project
       • MainActivity.java
       • activity_main.xml




                                6
Android Programming


Introducing Adapters

 Custom ArrayAdapter
    You can subclass ArrayAdapter and override getView() to “roll
     your own” views:




                                7
Android Programming


Using Selection Widgets




        Using Selection Widgets




                  8
Android Programming


Using Selection Widgets

 ListView
    The classic Android ListView is a plain list of text.
    However, you can have a list whose rows are made up of icons,
     or icons and text, or check-boxes and text, or whatever you
     want.
    Update Example 3.1 project




                                9
Android Programming


Using Selection Widgets




                    10
Android Programming


Using Selection Widgets

 ListView (cont.)
    Custom ArrayAdapter for binding more data
    See Example 3.2




                               11
Android Programming


Using Selection Widgets

 Example 3.2
    Custom ArrayAdapter
    Example 3.2 project
      •   MainActivity.java
      •   Person.java
      •   MyArrayAdapter.java
      •   activity_main.xml
      •   list_item.xml




                                12
Android Programming


Using Selection Widgets




                    13
Android Programming


Using Selection Widgets

                               Better.
                              Stronger.
                               Faster.




                                Using
                               convert
                                View


                    14
Android Programming


Using Selection Widgets

 GridView
    As the name suggests, GridView gives you a two-dimensional
     grid of items to choose from.

    You have moderate control over the number and size of the
     columns; the number of rows is dynamically determined based
     on the number of items the supplied adapter says are available
     for viewing.




                                15
Android Programming


Using Selection Widgets

 GridView (cont.)
    Properties
      • android:numColumns spells out how many columns there are, or, if you
        supply a value of auto_fit, Android will compute the number of columns
        based on available space and the following properties.

      • android:verticalSpacing and its counterpart android:horizontalSpacing
        indicate how much whitespace there should be between items in the grid.

      • android:columnWidth indicates how many pixels wide each column should
        be.



                                     16
Android Programming


Using Selection Widgets

 GridView (cont.)
    Properties (cont.)
       • android:stretchMode; this should be columnWidth to have the columns
         take up available space or spacingWidth to have the whitespace between
         columns absorb extra space.


    Otherwise, the GridView works much like any other selection
     widget—use setAdapter() to provide the data and child views.




                                      17
Android Programming


Using Selection Widgets

 Example 3.3
    GridView
    Example 3.3 project
       •   MainActivity.java
       •   MyArrayAdapter.java
       •   activity_main.xml
       •   gridview_item.xml




                                 18
Android Programming


Using Selection Widgets

 Spinners
    Spinners provide a quick way to select one value from a set.




                                 19
Android Programming


Using Selection Widgets

 Spinners (cont.)
    The choices you provide for the spinner can come from any
     source, but must be provided through an SpinnerAdapter, such
     as an ArrayAdapter




                               20
Android Programming


Exercise 3




             21
Android Programming

[Android] Using Selection Widgets

  • 1.
    Android Programming Lesson 3 Using Selection Widgets NGUYEN The Linh
  • 2.
    Android Programming Contents 1 Introducing Adapters 2 Using Selection Widgets 3 Exercise 3 2
  • 3.
    Android Programming Using SelectionWidgets Introducing Adapters 3
  • 4.
    Android Programming Introducing Adapters Adapters are bridging classes that bind data to user- interface Views.  Using ArrayAdapter  The ArrayAdapter is a generic class that binds AdapterViews to an array of objects.  By default, the ArrayAdapter binds the toString() value of each object to a TextView control defined within a layout.  To apply an Adapter to an AdapterView-derived class, you call the View’s setAdapter() method, passing in an Adapter instance, as shown in the snippet below: 4
  • 5.
  • 6.
    Android Programming Introducing Adapters Example 3.1  Using Basic ArrayAdapter  Example 3.1 project • MainActivity.java • activity_main.xml 6
  • 7.
    Android Programming Introducing Adapters Custom ArrayAdapter  You can subclass ArrayAdapter and override getView() to “roll your own” views: 7
  • 8.
    Android Programming Using SelectionWidgets Using Selection Widgets 8
  • 9.
    Android Programming Using SelectionWidgets  ListView  The classic Android ListView is a plain list of text.  However, you can have a list whose rows are made up of icons, or icons and text, or check-boxes and text, or whatever you want.  Update Example 3.1 project 9
  • 10.
  • 11.
    Android Programming Using SelectionWidgets  ListView (cont.)  Custom ArrayAdapter for binding more data  See Example 3.2 11
  • 12.
    Android Programming Using SelectionWidgets  Example 3.2  Custom ArrayAdapter  Example 3.2 project • MainActivity.java • Person.java • MyArrayAdapter.java • activity_main.xml • list_item.xml 12
  • 13.
  • 14.
    Android Programming Using SelectionWidgets Better. Stronger. Faster. Using convert View 14
  • 15.
    Android Programming Using SelectionWidgets  GridView  As the name suggests, GridView gives you a two-dimensional grid of items to choose from.  You have moderate control over the number and size of the columns; the number of rows is dynamically determined based on the number of items the supplied adapter says are available for viewing. 15
  • 16.
    Android Programming Using SelectionWidgets  GridView (cont.)  Properties • android:numColumns spells out how many columns there are, or, if you supply a value of auto_fit, Android will compute the number of columns based on available space and the following properties. • android:verticalSpacing and its counterpart android:horizontalSpacing indicate how much whitespace there should be between items in the grid. • android:columnWidth indicates how many pixels wide each column should be. 16
  • 17.
    Android Programming Using SelectionWidgets  GridView (cont.)  Properties (cont.) • android:stretchMode; this should be columnWidth to have the columns take up available space or spacingWidth to have the whitespace between columns absorb extra space.  Otherwise, the GridView works much like any other selection widget—use setAdapter() to provide the data and child views. 17
  • 18.
    Android Programming Using SelectionWidgets  Example 3.3  GridView  Example 3.3 project • MainActivity.java • MyArrayAdapter.java • activity_main.xml • gridview_item.xml 18
  • 19.
    Android Programming Using SelectionWidgets  Spinners  Spinners provide a quick way to select one value from a set. 19
  • 20.
    Android Programming Using SelectionWidgets  Spinners (cont.)  The choices you provide for the spinner can come from any source, but must be provided through an SpinnerAdapter, such as an ArrayAdapter 20
  • 21.
  • 22.