PinnedHands on Google KSPExperience with KSP; not a guide how to use KSP with RoomSep 27, 2021Sep 27, 2021
Pass data in the Modifier tree and beyondOne of the reasons why the order of Modifiers is important could be summed by passing data from one modifier node to other nodes right of…Sep 18, 2024Sep 18, 2024
Migrate your composed { } modifiersCompose lint checks used in the project raised warning that composed { } implementation is no longer recommended because of performance…Mar 12, 2024Mar 12, 2024
Compose CompositionLocalProviderCompositionLocalProvideris useful for sharing objects between composables without passing them as function parameters. Objects are stored…May 18, 2022May 18, 2022
Eliminating backing property type in Kotlin 1.7At one KotlinConf, I don’t quite recall which year it was, overriding backing properties type (eliminating the backing prop completely) was…Apr 4, 20222Apr 4, 20222
Repeatedly, I made few mistakes while using the new `registerForActivityResult` API, resulting in…``` Fatal Exception: java.lang.IllegalStateException: Fragment MyFragment{e964a6} (573498bb-7d87–4d58–9e84–59223f13f14c) id=0x7f0a00b3} is…Nov 2, 2020Nov 2, 2020
Consume Activity result directly in the ViewModelMost common implementation of Delegation pattern is when the responsibility of the class is delegated to a real object of a concrete…Mar 31, 2020Mar 31, 2020
Centralized LiveData with Kotlin 1.2The very first crash I got when started Kotlin was, you may guess, UninitializedPropertyAccessException, because somewhere I used lateinit…Dec 4, 2017Dec 4, 2017
Make use of Kotlin operator overloading for your RecyclerView.Adapter operationsI always liked and found entertaining messing around with operators in C++, back in the days.Nov 29, 20173Nov 29, 20173
Parameterized ViewModelProvider(s)When I thought I’m the first one to experience hard time injecting parameterized ViewModel into Activity/Fragment, stretched my fingers to…Jul 19, 20172Jul 19, 20172
Tip: Consume Cursor as RxJava2 IterableThis is going to be really short tip how to iterate over Cursor using RxJava. I promise!Jan 27, 20171Jan 27, 20171
Drag selection of RecyclerView itemsGoogle Photos is fascinating application, I admire every bit of it. Selection of photos is done right and seamless. Unlike old pal…Jan 22, 20174Jan 22, 20174
Camera availability tipIt’s been a lot of time since I have written something interesting on Android. Following post is on how should we properly listen for…Jan 15, 2017Jan 15, 2017
BottomNavigationView missing pearlsAndroid support 25.0.0 new BottomNavigationView outguns all other libraries on the streets. In my previous post on BottomNavigation…Oct 20, 20169Oct 20, 20169
Sort SortedList by different criteriaSortedList implementation currently supports providing Callback as parameter only in the constructor.Aug 29, 20161Aug 29, 20161
Published inProAndroidDevDiffUtil is a must!First arrival of new data for your empty RecyclerView.Adapter is trivial, just consume the event and you are all set. I’ve spent a lot of…Aug 18, 201620Aug 18, 201620
Bottom Navigation: Take 2In my previous post on how to implement Bottom Navigation Behavior, I discussed how we can use CoordinatoLayout.Behavior to achieve…Mar 29, 2016Mar 29, 2016
Bottom Navigation BehaviorMaterial Design guidelines have been updated with Bottom navigation component, which serves for quickly navigating between sections of the…Mar 15, 20164Mar 15, 20164
New BottomSheetIn AppCompat v23.2 developers were give another missing component from the Material Design Guidelines. I’m certain you have came across few…Feb 25, 20163Feb 25, 20163
Make TextView open links in CustomTabsOne of the basic features of TextView is recognizing URLs and transforming them into clickable spans. Once a link is clicked you are taken…Dec 23, 20153Dec 23, 20153