Preface
Chapter 1
Introduction
1.1
Android Platforms
1.2
Java vs. Android Java
1.3
Android Studio IDE
1.4
The Basics of App Design
1.5
The Anatomy of an Android Project
1.5.1 Android Manifest File
1.5.2 Java Source Code and Activity Class Files
1.5.3 Drawable Resources
1.5.4 Layout XML Files
1.5.5 Value Resources
1.5.6 Gradle Scripts
1.6
Building Basic Applications in Android Studio
1.7
Model-View-Controller
1.8
Debugging Android Applications
1.9
Sharing your Android Applications
Exercises
Chapter 2
Building User Interfaces and Basic Applications
2.1
Android User Interface
2.2
Layouts
2.3
The View Class
View
2.4
Text Input and Output
2.5
Soft Keyboards
2.6
Android’s Form Widgets for User Interfaces
2.6.1 RadioButton and CheckBox
RadioButton
CheckBox
2.6.2 ToggleButton
ToggleButton
2.6.3 Switch
Switch
2.6.4 ProgressBar
ProgressBar
2.6.5 SeekBar
SeekBar
2.6.6 RatingBar
RatingBar
2.6.7 Spinner
Spinner
2.7
Unique ID of a View Object and the R Class
2.8
The ViewGroup
ViewGroup
2.8.1 RadioGroup
RadioGroup
2.9
Adaptive Design Concepts—Screens and Orientations
2.10
TableLayout and TableRow
TableLayout
TableRow
2.11
Container Views
2.11.1 ListView, GridView, and ExpandableListView
ListView, GridView,
ExpandableListView
2.11.2 ScrollView and HorizontalScrollView
ScrollView
HorizontalScrollView
2.11.3 SearchView
SearchView
2.11.4 VideoView
VideoView
2.12
Using an Adapter
Chapter 3
Activities and Intents
3.1
Activity Lifecycle
3.2
Starting, Saving, and Restoring an Activity
3.3
Multiple Activities and the Intent Class
3.3.1 Explicit Intents
Intents
3.3.2 Implicit Intents
3.4
Handling Keyboard Visibility in an Activity
3.5
Passing Data between Activities
3.6
Basic Transitions between Activities
3.7
Scene Transitions
Chapter 4
Fragments, ActionBar, and Menus
4.1
Fragmentation and Android Fragments
4.2
The Fragment Lifecycle
4.3
Action Bar
4.4
ActionBar Configurations
4.4.1 Overflow on the Action Bar
4.4.2 Adding an Action View
4.5
Responsive Design with Fragments
4.6
Animation in Fragment Transactions
4.7
ListViews and Adapters
4.8
Handling Click Events in a ListView
Chapter 5
Graphics, Drawing, and Audio
5.1
Graphics in Android
5.2
Adding and Manipulating ImageViews
5.3
Drawing and the Canvas Class
5.4
Recursive Drawing
5.5
Frame-by-Frame and Film Loop Animations
5.6
Animate Library
5.7
Audio
5.7.1 SoundPool
SoundPool
5.7.2 MediaPlayer
MediaPlayer
Chapter 6
Threads, Handlers, and Programmatic Movement
6.1
Multithreading and Multicore Processing
6.2
Main Thread and Background Thread
6.3
Thread Approaches
6.3.1 Implementing a Runnable Interface
6.3.2 Extend the Thread Class
6.4
UI Modification and the Handler Class
6.5
Loopers
6.6
Canvas Movement and Views
6.7
SurfaceViews
6.8
Efficient Threading
6.9
Materials and Functionality
6.10
AsyncTasks
Chapter 7
Touch Gestures
7.1
Touchscreens
7.2
7.3
The Basics of Touch Events
7.4
Gesture Detector
7.5
The MotionEvent Class
7.6
The Drag-and-Drop Gesture
7.7
Fling Gesture
7.8
Fling Velocity
7.9
Multitouch Gestures
Chapter 8
Sensors and Camera
8.1
Sensors and Mobile Devices
8.2
Android Sensors
8.2.1 Motion Sensors
8.2.2 Environmental Sensors
8.2.3 Positional Sensors
8.3
Working with Sensors
8.4
Coordinate System
8.5
Accelerometer and Force
8.6
Sensor Batching
8.6.1 Step Counter and Step Detector
8.7
Composite Sensors
8.8
Camera
8.8.1 The Built-in Camera Application
8.9
Manipulating Photos
Chapter 9
File Storage, Shared Preferences, and SQLite
9.1
Storing Data
9.2
Shared Preferences
9.3
File Storage—Internal and External Storage
9.4
Android Database with SQLite
9.5
SQLiteOpenHelper
9.6
Adapters and AdapterViews
Adapters
AdapterViews
Index
18.220.66.151