Howtodoandroid – Learn android by doing

  • Ultimate Guide to Android Material Design Components

    Ultimate Guide to Android Material Design Components

    Material design is a comprehensive guide for visual, motion, and interaction design across platforms and devices. Google announced Material Design on June 25, 2014, at the 2014 Google I/O conference. Material Design can be used in API Level 21 (Android 5.0) and newer via the v7 appcompat library, which is used on virtually all Android […]

  • Drag And Drop Recyclerview Item Android [Example]

    Drag And Drop Recyclerview Item Android [Example]

    In this post, I have explained how to make a recyclerview item drag and dropable or swipeable by using the Android Support Library ItemTouchHelper. before getting started, check out my other post on recyclerview. Android RecyclerView Item Animations in Kotlin [Example] Android Recyclerview Search Filter Example Implementing Pagination With Recyclerview ItemTouchHelper This is a utility […]

  • Kotlin High Order Functions and Lambdas Explained

    Kotlin High Order Functions and Lambdas Explained

    A higher-order function is a function that takes functions as parameters or returns a function. Instead of Integer, String, or Array as a parameter to a function, we will pass an anonymous function or lambdas. Frequently, lambdas are passed as parameters in Kotlin functions for convenience. before getting started into scope functions, I have explained […]

  • Kotlin Scope Functions Explained [Example]

    Kotlin Scope Functions Explained [Example]

    By definition, Scoped functions are functions that execute a block of code within the context of an object. Kotlin “scope functions” are functions that allow for changing the scope, or the range, of a variable. There are five such functions included in the Kotlin standard library: apply, run, with, let, and also. before getting started […]

  • Navigation rail – Material Component For Android

    Navigation rail – Material Component For Android

    The rail is a side navigation component that displays three to seven app destinations and, optionally, a Floating Action Button. Each destination is represented by an icon and a text label. The rail can function on its own at larger screen sizes, such as desktops and tablets. When users transition between screen sizes and devices, […]

  • Jetpack compose – Retrofit with Recyclerview

    Jetpack compose – Retrofit with Recyclerview

    In this post, I am going to explain about using the retrofit and recyclerview in jetpack compose with MVVM pattern. Everybody knows that the Jetpack Compose is a modern toolkit designed to simplify UI development. Before jumping into this example on retrofit and recyclerview. I have created posts on jetpack compose components, layouts, modifiers, and […]

  • Getting started with jetpack compose – Theming

    Getting started with jetpack compose – Theming

    Jetpack Compose implements Material Theming and supports a dark theme by default. You can customize color, typography, and shape theming values to fit your product’s brand, and get access to convenient functions for working with a system of dark themes (like isSystemInDarkTheme, lightColors, and darkColors). The default MaterialTheme from the documentation looks like this: We […]

  • Getting started with jetpack compose – Scaffold layout

    Getting started with jetpack compose – Scaffold layout

    A Scaffold is a layout that implements the basic material design layout structure. You can add things like a TopBar, BottomBar, FAB, or a Drawer. Jetpack Compose provides Scaffold Composable which can save a lot of time. It’s like a prebuilt template. If you’re new to Compose, I highly recommend going through the following articles: […]

  • Getting started with jetpack compose – Modifiers

    Getting started with jetpack compose – Modifiers

    Modifiers are used to modify certain aspects of how the component is displayed on the screen. The Modifier itself is an interface, so we don’t directly instantiate an instance of that – instead, we use the provided subclasses to decorate our component in some way. If you’re new to Compose, I highly recommend going through […]

  • Getting started with jetpack compose – ConstraintLayout

    Getting started with jetpack compose – ConstraintLayout

    ConstraintLayout can help place composable relative to others on the screen and is an alternative to using multiple nested Row, Column, Box, and custom layout elements. ConstraintLayout is useful when implementing larger layouts with more complicated alignment requirements. – Android Developers If you’re new to Compose, I highly recommend going through the following articles: Getting […]