Index
A
- access modifier / Controlling class use with access modifiers
- access modifiers
- methods / Methods have access modifiers too
- method access modifiers / Method access modifiers
- method access summary / Method access summary
- accessors / Accessing private variables with getters and setters
- Activity class / ImageView and Activity
- adapter / The solution to the problem with displaying lots of widgets
- addition operator
- about / The addition operator
- advanced persistence
- about / More advanced persistence
- JavaScript Object Notation (JSON) / What is JSON?
- Java exceptions / Java exceptions – try, catch, and finally
- Andriod
- learning / The beginner's first stumbling block
- working / How Java and Android work together
- Andriod Studio
- about / Android Studio
- setting up / Setting up Android Studio
- step / Final step – for now
- Android
- about / Why Java and Android?, Run that by me again – What exactly is Android?
- apps interaction / How Android interacts with our apps
- naming conventions and code style, reference / Using naming conventions and String resources
- version / Handling different versions of Android
- version, detecting / Detecting the current Android version
- Android API / The Android API
- Android app / What makes an Android app?, The life and times of an Android app
- about / Our first Android app
- step / Extra step 1, Extra step 2
- deploying / Deploying the app so far
- deploying, on Andriod emulator / Running and debugging the app on an Android emulator
- executing, on Andriod emulator / Running and debugging the app on an Android emulator
- executing, on real device / Running the app on a real device
- Android application PacKage (APK) / Run that by me again – What exactly is Android?
- Android coordinate system
- about / Android coordinate system
- plotting / Plotting and drawing
- drawing / Plotting and drawing
- Android design guidelines / Android design guidelines
- Android emulator
- exploring / Exploring the Android emulator
- emulator control panel / Emulator control panel
- using, as real device / Using the emulator as a real device
- app drawer, accessing / Accessing the app drawer
- active apps, viewing / Viewing active apps and switching between apps
- switching, between apps / Viewing active apps and switching between apps
- Android Intents
- about / Android Intents
- activity, switching / Switching Activity
- data, passing between activities / Passing data between Activities
- Android lifecycle
- about / A simplified explanation of the Android lifecycle
- phases / The lifecycle phases demystified
- phases, handling / How we handle the lifecycle phases
- demo app / Lifecycle demo app
- Android project
- anatomy / Project Explorer and project anatomy
- Android resources / Android resources
- Androids Java code
- Android specific UI guideline
- reference / Creating the content for the cards
- Android SQLite API
- about / Android SQLite API
- SQLiteOpenHelper / SQLiteOpenHelper and SQLiteDatabase
- SQLiteDatabase / SQLiteOpenHelper and SQLiteDatabase
- queries, building / Building and executing queries
- queries, executing / Building and executing queries
- database cursors / Database cursors
- Android Studio
- overview / A quick guided tour of Android Studio
- Android Studio theme designer
- Android time zone
- reference / Coding the RadioButtons
- Android UI design
- exploring / Exploring Android UI design
- Android UI elements
- about / All the Android UI elements are classes too
- references / Re-introducing references
- Buttons, using / Using Buttons and TextView widgets from our layout
- TextView widgets, using / Using Buttons and TextView widgets from our layout
- Anonymous class / The Inner and Anonymous classes
- Inner class / The Inner and Anonymous classes
- Android’s Java code
- structure / The structure of Android's Java code
- animation demo app / Animations Demo App – introducing SeekBar
- laying out / Laying out the animation demo
- XML animations, coding / Coding the XML Animations
- wiring up, in Java / Wiring up the Animation Demo app in Java
- animations
- in Android / Animations in Android
- designing, in XML / Designing cool animations in XML
- fading in / Fading in and out
- fading out / Fading in and out
- moving / Move it, move it
- scaling / Scaling or stretching
- stretching / Scaling or stretching
- duration, controlling / Controlling the duration
- rotate animations / Rotate animations
- repeating / Repeating animations
- properties, combining with Set / Combining animation's properties with Set
- instantiating, with Java code / Instantiating animations and controlling them with Java code
- features / More animation features
- listeners / Listeners
- interpolators / Animation interpolators
- Anonymous class / The Inner and Anonymous classes
- anonymous class / Anonymous classes
- Apple class
- coding / Coding the apple
- using / Using the apple
- game, executing / Running the game
- Apple constructor / The Apple constructor
- application
- creating / Making an app!
- learning / Carrying on learning
- reading / Carrying on reading
- GitHub / GitHub
- StackOverflow / StackOverflow
- Android user forums / Android user forums
- higher-level study / Higher-level study
- application logic / Controller
- Application Programming Interface (API) / How Java and Android work together
- ARGB (Alpha, Red, Green and Blue) / Changing color
- array / Handling large amounts of data with arrays
- ArrayList
- adding, to Note to Self project / Adding RecyclerView, RecyclerAdapter, and ArrayList to the Note to Self project
- ArrayLists
- about / ArrayLists
- for loop / The enhanced for loop
- polymorphic / Arrays and ArrayLists are polymorphic
- arrays / Arrays
- object / Arrays are objects
- example / Simple array example mini-app
- nth dimension, entering / Entering the nth dimension with Arrays
- multi-dimensional, example / Multidimensional Array mini app
- out of bounds exception / Array out of bounds exceptions
- polymorphic / Arrays and ArrayLists are polymorphic
- assignment operator
- about / The assignment operator
- attributes
- about / Attributes quick summary
- auto-generated assets
- exploring / Exploring the auto-generated code and assets
- auto-generated code
- exploring / Exploring the auto-generated code and assets
B
- Basic Activity project
- about / The Basic Activity project
- exploring / Exploring the Basic Activity project
- MainActivity.java file / The MainActivity.java file
- activity_main.xml file / The activity_main.xml file
- MainActivity.java, extra methods / The extra methods in MainActivity.java
- content_main.xml file / The content_main.xml file
- Bitmap
- creating / Creating Bitmaps
- manipulating / Manipulating Bitmaps
- about / What is a Bitmap exactly?
- Matrix class / The Matrix class
- Bitmap class
- Bitmap manipulation demo app
- about / Bitmap manipulation demo app
- graphic, adding / Add the graphic to the project
- break keyword / Breaking out of a loop
- Buttons
- buttons
- adding, to layout file / Adding buttons to the main layout file
- adding, via visual designer / Adding a button via the visual designer
- attributes, editing / Editing the button's attributes
- XML code, examining / Examining the XML code for the new button
- adding, by editing XML code / Adding a button by editing the XML code
- unique id attributes, assigning / Giving the buttons unique id attributes
- positioning, in layout / Positioning the two buttons in the layout
- call different methods, creating / Making the buttons call different methods
C
- calling method / Methods inside the class
- camel casing / Storing and using data with variables
- Canvas class
- about / Understanding the Canvas class, Canvas and Bitmap, Canvas, Bitmap, Paint, and ImageView – quick summary
- drawing, with code / Getting started drawing with Bitmap, Canvas, and ImageView
- using / Using the Canvas class
- instances of classes, preparing / Preparing the instances of the required classes
- objects, initializing / Initializing the objects
- Activity content, setting / Setting the Activity content
- Canvas demo app
- about / The Canvas Demo app
- project, creating / Creating a new project
- coding / Coding the Canvas demo app
- Canvas Demo app
- Bitmap initialization, exploring / Exploring the Bitmap initialization
- drawing, on screen / Drawing on the screen
- Color.argb, explaining / Explaining Color.argb
- CardView
- used, for building UI / Building a UI with CardView and ScrollView
- chaining / Static methods
- CheckBox widget
- about / CheckBox
- class / Java is object-oriented
- about / Class recap
- code / Looking at the code for a class
- implementing / Class implementation
- object, initializing / Declaring, initializing, and using an object of the class
- object, declaring / Declaring, initializing, and using an object of the class
- object, using / Declaring, initializing, and using an object of the class
- using, as parameter in method signature / More things that we can do with our first class
- class access modifiers
- about / Class access modifiers
- public / Class access modifiers
- default / Class access modifiers
- class declaration / The class
- classes / Classes, Classes
- classes app / Basic classes app
- class use
- controlling, with access modifiers / Controlling class use with access modifiers
- class access modifiers / Class access modifiers
- class access, in summary / Class access in summary
- code comments / More code comments
- Color class
- reference / Changing color
- color wheel
- reference / The colors.xml file
- comparison operator / The comparison operator
- compiling / How Java and Android work together
- concatenation / Expressing yourself demo app
- configuration qualifiers
- about / Configuration qualifiers
- limitation / The limitation of configuration qualifiers
- console / Examining the log output
- constant / Static methods
- ConstraintLayout
- view, resizing / Resizing a view in a ConstraintLayout
- layouts, converting / Converting layouts to ConstraintLayout
- constructor / Declaring, initializing, and using an object of the class, Setting up our objects with constructors
- continue keyword / The continue keyword
- control flow statements / Repeating code with loops
- controller / Controller
- correctness / Problems with threads
- custom buttons
- adding, to screen / Adding custom buttons to the screen
D
- Dalvik Executable (DEX) / How Java and Android work together
- Dalvik Virtual Machine (DVM) / How Java and Android work together
- data / Methods
- laying out, with TableLayout / Laying out data with TableLayout
- TableRow, adding to TableLayout / Adding a TableRow to TableLayout
- Component Tree, used / Using the Component Tree when the visual designer won't do
- table columns, organizing / Organizing the table columns
- main menu, linking / Linking back to the main menu
- using, with variables / Storing and using data with variables
- storing, with variables / Storing and using data with variables
- handling, with arrays / Handling large amounts of data with arrays
- persisting, with SharedPreferences / Persisting data with SharedPreferences
- reloading, with SharedPreferences / Reloading data with SharedPreferences
- database / What is a database
- Database 101 / Database 101
- database class
- coding / Coding the database class
- data types
- reference / Primitive types
- de-serialization / More advanced persistence
- deadlock / Problems with threads
- decrement operator
- about / The decrement operator
- demo app, Android lifecycle
- coding / Coding the lifecycle demo app
- executing / Running the lifecycle demo app
- output, examining / Examining the Lifecycle Demo app output
- density-independent pixels (dp)
- used, for sizing / Sizing using dp
- development environment / Android Studio
- device detection mini-app
- about / Device detection mini-app
- MainActivity class, coding / Coding the MainActivity class
- executing / Running the app
- dialog boxes, Note to self app
- coding / Coding the dialog boxes
- DialogNewNote class, coding / Coding the DialogNewNote class
- DialogShowNote class, coding / Coding the DialogShowNote class
- DialogFragment class
- coding / Coding a DialogFragment class
- chaining process, used for configuration / Using chaining to configure the DialogFragment
- using / Using the DialogFragment class
- DialogFragment configuration
- chaining, using / Using chaining to configure the DialogFragment
- dialog window
- Demo project, creating / Creating the Dialog Demo project
- DialogFragment class, coding / Coding a DialogFragment class
- DialogFragment class, using / Using the DialogFragment class
- dialog windows
- about / Dialog windows
- dots-per-inch (dpi) / The res/mipmap
- do while loop / Do while loops
- draw method
- coding / Coding the draw method
- printDebuggingText method, adding / Adding the printDebuggingText method
- drivers / Run that by me again – What exactly is Android?
- dynamic arrays
- about / Getting dynamic with arrays
- example / Dynamic array example
E
- EditText widget / The EditText widget
- Empty Activity project
- about / The Empty Activity project
- exploring / Exploring the Empty Activity project
- manifests folder / The manifests folder
- java folder / The java folder
- res folder / The res folder
- res/drawable folder / The res/drawable folder
- res/layout folder / The res/layout folder
- res/mipmap / The res/mipmap
- res/values / res/values
- encapsulation / Remember that encapsulation thing?
- class use, controlling with access modifiers / Controlling class use with access modifiers
- variable use, controlling with access modifiers / Controlling variable use with access modifiers
- mini-app / Encapsulation and static methods mini-app
- enumeration / Enumerations
- exceptions / Java exceptions – try, catch, and finally
- Exploring Layouts project
- creating / Creating the Exploring Layouts project
- expressions
- about / Expressions
- demo app / Expressing yourself demo app
- Extensible Markup Language (XML) / Android resources
F
- for loop / For loops
- fragment app / Our first Fragment app
- Fragment classes
- coding / Coding the Fragment classes and their layouts, Coding the classes
- empty files, creating for classes / Creating the empty files for the classes and layouts
- using / Using the Fragment classes and their layouts
- coding, DataManager used / Coding the Fragment classes to use the DataManager
- Age Database app, executing / Running the Age Database app
- Fragment id / Building a Fragment Pager/slider app
- Fragment layouts
- coding / Coding the Fragment classes and their layouts
- empty files, creating for layouts / Creating the empty files for the classes and layouts
- using / Using the Fragment classes and their layouts
- Navigation Drawer menu, editing / Editing the Navigation Drawer menu
- holder, adding to layout / Adding a holder to the main layout
- MainActivity.java, coding / Coding the MainActivity.java
- Fragment Pager /slider app
- building / Building a Fragment Pager/slider app
- SimpleFragment class, coding / Coding the SimpleFragment class
- fragment_layout / The fragment_layout
- MainActivity class, coding / Coding the MainActivity class
- activity_main layout / The activity_main layout
- fragment slider app, executing / Running the fragment slider app
- fragment reality check / Fragment reality check
- fragments
- about / The limitation of configuration qualifiers, Fragments
- lifecycle / Fragments have a lifecycle too
- managing, with FragmentManager / Managing Fragments with FragmentManager
- fragments, lifecycle
- onCreate method / onCreate
- onCreateView method / onCreateView
- onAttach method / onAttach and onDetach
- onDetach method / onAttach and onDetach
- onStart method / onStart, onPause, and onStop
G
- game engine
- coding / Coding the game engine
- members, coding / Coding the members
- constructor, coding / Coding the constructor
- newGame method, coding / Coding the newGame method
- run method, coding / Coding the run method
- updateRequired method, coding / Coding the updateRequired method
- update method, coding / Coding the update method
- draw method, coding / Coding the draw method
- onTouchEvent, coding / Coding onTouchEvent
- pause and resume, coding / Coding pause and resume
- game loop / Coding the LiveDrawingView class, The game loop
- implementing, with thread / Implementing the game loop with a thread
- Runnable, implementing / Implementing Runnable and providing the run method
- run method, implementing / Implementing Runnable and providing the run method
- thread, coding / Coding the thread
- thread, starting / Starting and stopping the thread
- thread, stoping / Starting and stopping the thread
- Activity lifecycle, usedfor initiating thread / Using the Activity lifecycle to start and stop the thread
- Activity lifecycle, usedfor stoping thread / Using the Activity lifecycle to start and stop the thread
- run method, coding / Coding the run method
- garbage collector
- getters / Accessing private variables with getters and setters
- graphical mask / The res/drawable folder
- graphics
- adding / Adding the graphics
- Gravity
- using / Using Gravity
- greater than operator / The greater than operator
- greater than or equal to operator / The greater than or equal to operator
H
- Heap
- HelloWorldActivity.java file
- examining / Examining the HelloWorldActivity.java file
- code folding, in Andriod Studio / Code folding (hiding) in Android Studio
- package declaration / The package declaration
- classes, importing / Importing classes
- class / The class
- method, inside class / Methods inside the class
- Java code, summary / Summary of the Java code so far
I
- if keyword
- using / Using the Java if keyword
- else keyword / Else do this instead
- image gallery/slider app
- building / Building an image gallery/slider app
- layout, implementing / Implementing the layout
- PagerAdapter class, coding / Coding the PagerAdapter class
- MainActivity class, coding / Coding the MainActivity class
- executing / Running the gallery app
- ImageView class
- ImageView widget / The ImageView widget
- increment operator
- about / The increment operator
- infinite loop / While loops
- inheritance
- about / OOP and inheritance
- example / Inheritance example app
- Inner class / The Inner and Anonymous classes
- instance / Java is object-oriented
- instances / The manifests folder
- integrated development environment (IDE) / Android Studio
- interface / The Android API
- interpolators / More animation features, Animation interpolators
- reference link / Animation interpolators
J
- Java
- about / Why Java and Android?
- learning / The beginner's first stumbling block
- working / How Java and Android work together
- object oriented / Java is object-oriented
- fundamentals / Java is everywhere
- syntax / Syntax and jargon
- jargon / Syntax and jargon
- code comments / More code comments
- decisions, creating / Making decisions in Java
- code, indenting / Indenting code for clarity
- operators / More operators
- operators, used for testing variables / How to use all of these operators to test variables
- if keyword, using / Using the Java if keyword
- switch cases / Switching to make decisions
- Switch demo app / Switch Demo app
- UI widgets, creating without XML / Creating UI widgets from pure Java without XML
- Java code
- comments / Leaving comments in our Java code
- writing / Writing our first Java code
- message code, adding to onCreate method / Adding message code to the onCreate method
- output, examining / Examining the output
- used, for wiring up UI / Wiring up the UI with the Java code (part 1)
- used, for setting view / Setting the view with Java code
- structure / The structure of Java code – revisited
- Java Collections / More Java Collections – Meet Java Hashmap
- Java Development Kit (JDK) / Android Studio
- Java methods
- writing / Writing our own Java methods
- output, examining / Examining the output
- Java project
K
- key-value pairs / Passing data between Activities
- keywords / Syntax and jargon
L
- layers / Introducing the model-view-controller pattern
- layout
- creating / Making the layout look pretty
- layout files
- including, in another layout / Including layout files inside another layout
- layouts / Layouts
- converting, to ConstraintLayout / Converting layouts to ConstraintLayout
- designing / Designing the layouts
- content_insert.xml, designing / Designing content_insert.xml
- content_delete.xml, designing / Designing content_delete.xml
- content_search.xml, designing / Designing content_search.xml
- content_results.xml, designing / Designing content_results.xml
- layout_weight property
- using / Using the layout_weight property
- less than operator / The less than operator
- less than or equal to operator / The less than or equal to operator
- LinearLayout
- used, for building menu / Building a menu with LinearLayout
- adding / Adding a LinearLayout to the project
- workspace, preparing / Preparing your workspace
- generated XML, examining / Examining the generated XML
- TextView, adding to UI / Adding a TextView to the UI
- multi-line TextView, adding to UI / Adding a multi-line TextView to the UI
- LiveDrawingActivity class
- coding / Coding the LiveDrawingActivity class
- Live Drawing app
- viewing / Looking ahead at the Live Drawing app
- LiveDrawingActivity / Looking ahead at the Live Drawing app
- LiveDrawingView / Looking ahead at the Live Drawing app
- ParticleSystem / Looking ahead at the Live Drawing app
- Particle / Looking ahead at the Live Drawing app
- executing / Running the app
- live drawing app
- executing / Running the app
- Live Drawing project
- creating / Creating the Live Drawing project
- LiveDrawingView / Coding the LiveDrawingView class
- LiveDrawingView class
- coding / Coding the LiveDrawingView class, Coding the LiveDrawingView class
- member variables, adding / Adding the member variables
- draw method, coding / Coding the draw method
- draw method / Understanding the draw method and the SurfaceView class
- SurfaceView class / Understanding the draw method and the SurfaceView class
- LiveDrawingView constructor
- locking / Problems with threads
- logcat / Examining the log output
- logcat output
- logical AND operator / The logical AND operator
- logical NOT operator / The logical NOT operator
- logical OR operator / The logical OR operator
- log output
- examining / Examining the log output
- loops
- while loops / While loops
- do while loop / Do while loops
- for loop / For loops
- demo app / Loops demo app
M
- MainActivity class
- coding / Coding the MainActivity class
- screen orientation, unlocking / Unlocking the screen orientation
- margin
- using / Using padding and margin
- match
- used, for determining size / Determining size with wrap or match
- material design / Material design
- reference / Creating the content for the cards
- about / Themes and material design
- guidelines, reference / Themes and material design
- Matrix class
- about / The Matrix class
- Bitmap, inverting to opposite direction / Inverting a bitmap to face the opposite direction
- bitmap, rotating / Rotating the bitmap to face up and down
- Memo app
- building / What's new in the second edition?
- memory management
- warning / Important memory management warning
- messages
- coding, to user / Coding messages to the user and the developer
- coding, to developer / Coding messages to the user and the developer
- method overloading
- exploring / Exploring method overloading
- about / Exploring method overloading
- methods / Methods
- exploring, with demo apps / Using methods demo apps
- method structure
- about / Method structure
- modifier / Modifier
- return type / Return type
- name of method / Name of a method
- parameters / Parameters
- body / The body
- model / Model
- model-view-controller pattern / Introducing the model-view-controller pattern
- multi-line comment / More code comments
- multiplication operator
- about / The multiplication operator
- mutators / Accessing private variables with getters and setters
N
- name method / Methods inside the class
- naming convention / Storing and using data with variables
- NavigationView / Introducing the NavigationView
- nesting / Adding layouts within layouts
- NOT equal operator / The NOT equal operator
- Note to Self
- executing / Running the app
- Note to self app
- about / The Note to self app
- naming conventions, using / Using naming conventions and String resources
- String resources, using / Using naming conventions and String resources
- code files, obtaining / How to get the code files for the Note to self app
- completed app / The completed app
- project, building / Building the project
- String resources, preparing / Preparing the String resources
- Note class, coding / Coding the Note class
- Dialog designs, implementing / Implementing the Dialog designs
- dialog boxes, coding / Coding the dialog boxes
- new dialogs, displaying / Showing our new dialogs
- floating action button, coding / Coding the floating action button
- settings page, adding / Adding a settings page to Note to Self
- SettingsActivity, creating / Creating the SettingsActivity
- Settings screen layout, designing / Designing the Settings screen layout
- user enabled, to switch settings screen / Enabling the user to switch to the settings screen
- settings persist, creating / Making the Note to Self settings persist
- SettingsActivity class, coding / Coding the SettingsActivity class
- MainActivity class, coding / Coding the MainActivity class
- user data, backing up / Backing up user data in Note to Self
- Note to Self app / The Note to Self app
- creating, for spanish speakers / Making the Note to Self app for Spanish, English, and German speakers
- creating, for english speakers / Making the Note to Self app for Spanish, English, and German speakers
- creating, for gerrman speakers / Making the Note to Self app for Spanish, English, and German speakers
- spanish language, adding / Adding Spanish support
- german language, adding / Adding German support
- string resources, adding / Adding the string resources
- executing, in german language / Running Note to Self in German or Spanish
- executing, in spanish language / Running Note to Self in German or Spanish
- translations work, creating in Java code / Making the translations work in Java code
O
- object / Java is object-oriented
- object-oriented language / Java is object-oriented
- object-oriented programming (OOP) / The Android API, Java is object-oriented
- about / Object-oriented programming, What is OOP exactly
- encapsulation / Encapsulation
- polymorphism / Polymorphism
- inheritance / Inheritance
- using / Why do it like this?
- objects
- setting up, with constructors / Setting up our objects with constructors
- initializing / Declaring and initializing the objects
- declaring / Declaring and initializing the objects
- OnTouchEvent method
- handling / Handling touches
- coding / Coding the onTouchEvent method
- HUD, finishing / Finishing the HUD
- OOP / OOP and inheritance
- operators
- variable values, modifying with / Changing values in variables with operators
- assignment operator / The assignment operator
- addition operator / The addition operator
- subtraction operator / The subtraction operator
- division operator / The division operator
- multiplication operator / The multiplication operator
- increment operator / The increment operator
- decrement operator / The decrement operator
- reference / The decrement operator
- operators, Java
- about / More operators
- comparison operator / The comparison operator
- logical NOT operator / The logical NOT operator
- NOT equal operator / The NOT equal operator
- greater than operator / The greater than operator
- less than operator / The less than operator
- greater than or equal to operator / The greater than or equal to operator
- less than or equal to operator / The less than or equal to operator
- logical AND operator / The logical AND operator
- logical OR operator / The logical OR operator
- overridden methods / Some other overridden methods
P
- package / Packages
- package declaration / The package declaration
- padding
- using / Using padding and margin
- Paint class / Paint, Canvas, Bitmap, Paint, and ImageView – quick summary
- particle system effect
- implementing / Implementing a particle system effect
- Particle class, coding / Coding the Particle class
- ParticleSystem class, coding / Coding the ParticleSystem class
- particle systems, spawning in LiveDrawingView class / Spawning particle systems in the LiveDrawingView class
- polymorphism
- about / Polymorphism
- abstract classes / Abstract classes
- interfaces / Interfaces
- precise UI
- building, with ConstraintLayout / Building a precise UI with ConstraintLayout
- CalenderView, adding / Adding a CalenderView
- Component Tree window, using / Using the Component Tree window
- constraints manually, adding / Adding constraints manually
- UI elements, adding / Adding and constraining more UI elements
- UI elements, constraining / Adding and constraining more UI elements
- text clickable, creating / Making the text clickable
- primitive types
- about / Primitive types
- int type / Primitive types
- long type / Primitive types
- float type / Primitive types
- double type / Primitive types
- boolean type / Primitive types
- char type / Primitive types
- private variables
- accessing, with getters / Accessing private variables with getters and setters
- accessing, with setters / Accessing private variables with getters and setters
- project explorer / Project Explorer and project anatomy
- publishing
- guidelines / Publishing
Q
- qualifiers / The res/mipmap
R
- radio button / Radio button and group
- radio group / Radio button and group
- random diversion / A random diversion
- real world apps / Real-world apps
- real world methods
- about / Real world methods
- variable scope, discovering / Discovering variable scope
- RecyclerAdapter
- about / RecyclerView and RecyclerAdapter
- widgets display, problem / The problem with displaying lots of widgets
- widgets display, solution / The solution to the problem with displaying lots of widgets
- using / How to use RecyclerView and RecyclerAdapter
- adding, to Note to Self project / Adding RecyclerView, RecyclerAdapter, and ArrayList to the Note to Self project
- class, coding / Coding the RecyclerAdapter class
- NoteAdapter constructor, coding / Coding the NoteAdapter constructor
- onCreateViewHolder method, coding / Coding the onCreateViewHolder method
- onBindViewHolder method, coding / Coding the onBindViewHolder method
- getItemCount, coding / Coding getItemCount
- ListItemHolder inner class, coding / Coding the ListItemHolder inner class
- RecyclerAdapter classes
- used, for coding MainActivity / Coding MainActivity to use the RecyclerView and RecyclerAdapter classes
- RecyclerView
- about / RecyclerView and RecyclerAdapter
- widgets display, problem / The problem with displaying lots of widgets
- widgets display, solution / The solution to the problem with displaying lots of widgets
- using / How to use RecyclerView and RecyclerAdapter
- setting up, with RecyclerAdapter / What we will do to set up RecyclerView with RecyclerAdapter and an ArrayList of notes
- setting up, with ArrayList of notes / What we will do to set up RecyclerView with RecyclerAdapter and an ArrayList of notes
- adding, to Note to Self project / Adding RecyclerView, RecyclerAdapter, and ArrayList to the Note to Self project
- Show Note button, removing / Removing the temporary Show Note button and adding the RecyclerView
- list item, creating / Creating a list item for the RecyclerView
- RecyclerView classes
- used, for coding MainActivity / Coding MainActivity to use the RecyclerView and RecyclerAdapter classes
- code, adding to onCreate / Adding code to onCreate
- addNote method, modifying / Modifying the addNote method
- showNote method, coding / Coding the showNote method
- references
- about / Re-introducing references
- reference types
- about / Reference types
- strings / Strings
- arrays / Arrays
- classes / Classes
- res/values, Empty Activity project
- about / res/values
- colors.xml file / The colors.xml file
- strings.xml file / The strings.xml file
- styles.xml file / The styles.xml file
- RGB color system
- reference / Changing color
S
- scalable pixels (sp)
- used, for sizing fonts / Sizing fonts using sp
- scopes / Scope and variables revisited
- ScrollView
- used, for building UI / Building a UI with CardView and ScrollView
- serialization / More advanced persistence
- setters / Accessing private variables with getters and setters
- signature / Method structure
- signature method / Methods inside the class
- Simple Database app
- examining / Examining the Simple Database app
- insert / Insert
- delete / Delete
- search / Search
- results / Results
- Simple Database project
- initiating / Starting the Simple Database project
- snake class
- coding / Coding the Snake class
- constructor, coding / Coding the constructor
- reset method, coding / Coding the reset method
- move method, coding / Coding the move method
- detectDeath method, coding / Coding the detectDeath method
- checkDinner method, coding / Coding the checkDinner method
- draw method, coding / Coding the draw method
- switchHeading method, coding / Coding the switchHeading method
- using / Using the snake class and finishing the game
- snake game
- controlling / How to play
- initiating / Getting started with the Snake game
- app full screen, creating / Make the app full screen and landscape
- app landscape, creating / Make the app full screen and landscape
- empty classes, adding / Adding some empty classes
- SnakeActivity, coding / Coding SnakeActivity
- sound effects, adding / Adding the sound effects
- executing / Running the game, Running the completed game
- sound, adding / Add the sound to the project
- Software Development Kit (SDK) / Android Studio
- SoundPool class
- about / The Soundpool class
- initializing / Initializing SoundPool the new way , Initializing SoundPool the old way
- sound files, loading into memory / Loading sound files into memory
- sound, playing / Playing a sound
- sound, stopping / Stopping a sound
- Spinner widget
- about / Sound demo app introducing Spinner widget
- sound FX, creating / Making sound FX
- sound demo, laying out / Laying out the sound demo
- sound demo, coding / Coding the Sound demo
- SQLite / What is SQLite
- SQLite example code
- about / SQLite example code
- table, creating / Creating a table
- data, inserting into database / Inserting data into the database
- data, retrieving from database / Retrieving data from the database
- database structure, updating / Updating the database structure
- SQL syntax primer
- about / SQL syntax primer
- Stack
- StackOverflow
- URL / StackOverflow
- static methods / Static methods
- mini-app / Encapsulation and static methods mini-app
- string identifier / Adding the string resources
- strings / Strings
- Structured Query Language (SQL) / What is SQL
- sub-packages / Packages
- sub class / OOP and inheritance
- subtraction operator
- super class / OOP and inheritance
- surface / Canvas and Bitmap
- SurfaceView / Coding the LiveDrawingView class
- swipe menu / Angry birds classic swipe menu
- Switch widget
- about / Switch
T
- table / What is a database
- tablet emulator
- creating / Creating a tablet emulator
- TextClock widget
- about / TextClock
- TextView widgets
- themes
- design / Themes and material design
- threads / Coding the LiveDrawingView class
- about / Threads
- problems / Problems with threads
U
- UI
- wiring up, with Java code / Wiring up the UI with the Java code (part 2)
- building, with ScrollView / Building a UI with CardView and ScrollView
- building, with CardView / Building a UI with CardView and ScrollView
- UI, building
- view, setting with Java code / Setting the view with Java code
- image resources, adding / Adding image resources
- card content, creating / Creating the content for the cards
- dimensions, defining for CardViews / Defining dimensions for CardViews
- CardViews, adding to layout / Adding CardViews to our layout
- UI widgets
- creating, from Java without XML / Creating UI widgets from pure Java without XML
- EditText widget / The EditText widget
- ImageView widget / The ImageView widget
- radio button / Radio button and group
- radio group / Radio button and group
- Switch widget / Switch
- CheckBox widget / CheckBox
- TextClock widget / TextClock
- User Interface (UI) / Android resources
V
- variable access modifiers
- about / Variable access modifiers
- public / Variable access modifiers
- protected / Variable access modifiers
- default / Variable access modifiers
- private / Variable access modifiers
- variables
- about / Storing and using data with variables
- data, storing / Storing and using data with variables
- data, using / Storing and using data with variables
- types / Types of variables
- primitive types / Primitive types
- reference types / Reference types
- using / Using variables
- declaration / Variable declaration
- initialization / Variable initialization
- default values / Variable initialization
- values, modifying with operators / Changing values in variables with operators
- variable use
- controlling, with access modifiers / Controlling variable use with access modifiers
- variable access modifiers / Variable access modifiers
- variable access summary / Variable access summary
- view / Adding layouts within layouts, View
- view group / Adding layouts within layouts
W
- while loops / While loops
- break keyword / Breaking out of a loop
- continue keyword / The continue keyword
- widget exploration app
- creating / Widget exploration app
- project, setting up / Setting up the widget exploration project and UI
- UI, preparing / Setting up the widget exploration project and UI
- coding / Coding the widget exploration app
- reference, obtaining / Getting a reference to the parts of the UI
- CheckBoxes, coding / Coding the checkboxes
- transparency, modifying / Changing transparency
- color, modifying / Changing color
- size, modifying / Changing size
- RadioButtons, coding / Coding the RadioButtons
- anonymous class, using for Button / Using an anonymous class for a regular button
- Switch, coding / Coding the Switch
- executing / Running the Widget Exploration app
- wrap
- used, for determining size / Determining size with wrap or match
X
- XML layout
- examining / Examining the main layout file
- UI layout elements / UI layout elements
- UI text elements / UI text elements
- buttons, adding / Adding buttons to the main layout file
- XML layout code