Useful Links
Computer Science
Programming
By Language
Android Development with Kotlin
1. Introduction to Android and Kotlin
2. Kotlin Language Fundamentals
3. Your First Android Application
4. Android UI Fundamentals
5. Jetpack Compose: The Modern UI Toolkit
6. App Components and Lifecycle
7. App Navigation
8. Data Storage and Persistence
9. Concurrency and Background Tasks
10. Networking
11. App Architecture
12. Advanced Android Topics
13. Testing and Debugging
14. Publishing Your App
Android UI Fundamentals
Views and ViewGroups
The View Hierarchy
Parent-Child Relationships
Layout Rendering Process
View Tree Structure
View Lifecycle
Measure
Layout
Draw
Common View Widgets
TextView
Displaying Text
Text Styling
Spans and Markup
EditText
User Input Handling
Input Types
Input Validation
TextWatcher
Button
Click Events
Customizing Appearance
Button States
ImageView
Displaying Images
Scale Types
Tinting
ImageButton
CheckBox
Toggle States
Compound Button Events
RadioButton and RadioGroup
Grouping Radio Buttons
Selection Handling
Switch and ToggleButton
ProgressBar
Determinate and Indeterminate
SeekBar
Progress Tracking
Spinner
Dropdown Selection
Adapters
Layouts with XML
LinearLayout
Orientation (Horizontal/Vertical)
Weight Distribution
Gravity and Layout Gravity
RelativeLayout
Positioning with Rules
Alignment Rules
Margin and Padding
ConstraintLayout
Constraints and Anchors
Chains
Guidelines
Barriers
Groups
Performance Considerations
FrameLayout
Layering Views
Foreground and Background
TableLayout
Table Structure
Column Spanning
GridLayout
Grid-based Positioning
ScrollView and HorizontalScrollView
Enabling Scrolling
Nested Scrolling
NestedScrollView
Layout Attributes and Properties
Common Layout Parameters
Width and Height
Margins and Padding
Gravity and Layout Gravity
View Positioning
View Sizing
match_parent
wrap_content
Fixed Dimensions
Handling User Interaction
Event Listeners
OnClickListener
OnLongClickListener
OnTouchListener
OnFocusChangeListener
Other Common Listeners
Event Handling Patterns
Anonymous Inner Classes
Lambda Expressions
Method References
Capturing User Input
Retrieving Text and Values
Input Validation Techniques
Touch Events and Gestures
MotionEvent
GestureDetector
Styling and Theming
Using Styles
Defining Styles
Applying Styles
Style Inheritance
Creating and Applying Themes
Theme Attributes
Theme Inheritance
Dark Theme Support
Material Design Components
Material Buttons
Material Cards
Material Text Fields
Color and Typography Guidelines
Material Design System
Custom Drawables
Shape Drawables
Selector Drawables
Layer List Drawables
Previous
3. Your First Android Application
Go to top
Next
5. Jetpack Compose: The Modern UI Toolkit