Chapter 3: Engage! Android User Input, Variables, and...
Transcript of Chapter 3: Engage! Android User Input, Variables, and...
Chapter 3: Engage! Android User Input, Variables, and Operations
Objectives In this chapter, you learn to: • Use an Android theme • Add a theme to the Android Manifest file • Develop the user interface using Text Fields • State the role of different Text Fields • Display a hint using the Hint property • Develop the user interface using a Spinner control • Add text to the String table
2 Android Boot Camp for Developers using Java
Objectives (continued)
• Add a prompt to the Spinner control • Declare variables to hold data • Code the GetText() method • Understand arithmetic operations • Convert numeric data • Format numeric data • Code the SetText() method • Run the completed app in the emulator
3 Android Boot Camp for Developers using Java
Android Themes
• Engaging the user by requesting input customizes the user experience each time the application is executed
• A theme is a style applied to an Activity or an entire application
• The default theme is a title bar (often gray) with a black background
4 Android Boot Camp for Developers using Java
Android Themes (continued)
• Previewing a Theme – Check the main.xml file in the emulator to see what
your screen looks like
5 Android Boot Camp for Developers using Java
Figure 3-3 Default Theme Figure 3-4 Holographic Theme
Android Themes (continued)
• Coding a Theme in the Android Manifest File – Insert this code into the AndroidManifest.xml file
android:theme="@android:style/Theme.Black.NoTitleBar“
6 Android Boot Camp for Developers using Java
Figure 3-10 Adding the theme to the Android Manifest File
Simplifying User Input
– The onscreen keyboard is called a softkeyboard • Input can be in the form of tapping or gestures (using
two fingers to pan, rotate, or zoom) • Primary design challenge is to simplify user
experiences • Use legible fonts, simplify input, and optimize each
device’s capabilities to maximize user experience
7 Android Boot Camp for Developers using Java
Figure 3-13 Onscreen keyboard
Simplifying User Input (continued)
• Android Text Fields – Text Fields are the most common type of mobile
input • Can be free-form plain text • Numbers • A person’s name, password, email, phone number • A date • Multiline text
8 Android Boot Camp for Developers using Java
Simplifying User Input (continued)
9 Android Boot Camp for Developers using Java
Figure 3-12 Types of Text Fields controls
Simplifying User Input (continued)
• Adding a Text Field – Use the Id property
in the Properties pane to enter a name that begins with the prefix txt
– Use descriptive names like txtTickets instead of txtText1
10 Android Boot Camp for Developers using Java
Figure 3-14 TextView control added and formatted
Simplifying User Input (continued)
• Setting the Hint Property for the Text Field – A hint is a short description of a field visible as light-
colored text (called a watermark)
11 Android Boot Camp for Developers using Java
Figure 3-17 Hint added to text Field control
Simplifying User Input (continued)
• Coding the EditText Class for the Text Field – A variable is used in programming to contain data
that changes during the execution of a program – Final variables can be initialized but cannot be
changed – Insert this code to create a variable: final EditText tickets=(EditText) findViewById(R.id.txtTickets);
12 Android Boot Camp for Developers using Java
Simplifying User Input (continued)
13 Android Boot Camp for Developers using Java
Figure 3-18 Coding the EditText class for the Text Field
Simplifying User Input (continued)
• Android Spinner Control – A Spinner control is similar to a drop-down list for
selecting a single item from a fixed list – The spinner control displays a list of strings called
items in a pop-up window – A string is a series of alphanumeric characters that
can include spaces
14 Android Boot Camp for Developers using Java
Simplifying User Input (continued)
• Using the String Table – A file named strings.xml is part of all Android apps
and contains a list of commonly used strings – Android loads the resources from the project’s String
table – Android can select text using Localization which
allows for changing text based on the user’s preferred language
– A prompt is used to display instructions at the top of the spinner control
15 Android Boot Camp for Developers using Java
Simplifying User Input (continued)
• Adding a Spinner Control with String Array Entries – A Spinner property named Entries connects the
String Array to the Spinner control • Coding the Spinner Control
16 Android Boot Camp for Developers using Java
Figure 3-26 Coding the Spinner Control
Simplifying User Input (continued)
• Adding the Button, TextView, and ImageView Controls
17 Android Boot Camp for Developers using Java
Figure 3-27 Adding a Button control
Simplifying User Input (continued)
18 Android Boot Camp for Developers using Java
Figure 3-28 Coding the button
Simplifying User Input (continued)
19 Android Boot Camp for Developers using Java
Figure 3-29 Adding a TextView control to display results
Simplifying User Input (continued)
20 Android Boot Camp for Developers using Java
Figure 3-30 Assigning the TextView control to a variable
Simplifying User Input (continued)
21 Android Boot Camp for Developers using Java
Figure 3-31 Adding a ImageView control
Declaring Variables • Primitive Data Types
22 Android Boot Camp for Developers using Java
Table 3-1 Primitive data types in Java
Declaring Variables (continued)
• String Data Type – A string can be a character, word, or phrase
• Declaring the Variables – Typically declared at the beginning of an Activity – Variables must be declared before you can use them
23 Android Boot Camp for Developers using Java
Declaring Variables (continued)
24 Android Boot Camp for Developers using Java
Figure 3-32 Declaring variables for the Activity
Declaring Variables (continued)
• GetText() Method – Read data stored in the EditText control with the
GetText() method – Data is read in as a string, by default – A Parse class is used to convert strings into
numbers
25 Android Boot Camp for Developers using Java
Table 3-2 Parse type conversions
Working with Mathematical Operations
26 Android Boot Camp for Developers using Java
• Arithmetic Operators
Table 3-3 Java arithmetic operators
Working with Mathematical Operations (cont’d)
27 Android Boot Camp for Developers using Java
• Formatting Numbers – Currency format requires a dollar sign, a comma (if
needed), a decimal point, and two decimal places – Java has a class called DecimalFormat that
provides patterns, such as $###,###.## for displaying on the Android screen
Figure 3-34 Calculating and formatting the ticket cost
Displaying Android Output
• GetSelectedItem() Method – The GetSelectedItem() method returns the text label
of the currently selected Spinner item • SetText () Method
– The SetText() method displays text in a TextView control
28 Android Boot Camp for Developers using Java
Displaying Android Output (continued)
29 Android Boot Camp for Developers using Java
Figure 3-35 Completed code
Summary • Assign a theme to an Activity or an entire
application to prevent apps from looking too similar • Define a theme in the Android Manifest file for each
Activity • Use Text Fields to request input from users • Use a control’s Hint property to provide guidelines
to users so they know what to enter • Use the EditText class to extract text users have
entered and store that text in a variable • Use GetText() to get data and SetText() to display
data 30 Android Boot Camp for Developers using Java
Summary (continued)
• Strings.xml is part of every Android application • You can edit a string in the strings.xml file to
update text anywhere in the application • Use GetSelectedItem() to return the text of the
selected Spinner item • To use a variable, you must first declare it • Variables are declared at the beginning of an
Activity • Convert variables to the correct data type using the
Parse class 31 Android Boot Camp for Developers using Java