56,966 blogs · [ { "id": "01a0874b-3d2a-7165-b123-93e6db42f31a", "title": "How I use AI to partner on design problems", "url": "https://blog.iamsuleiman.com/how-i-use-ai-to-think-through-design-problems/", "published_at": "2026-05-11T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6dc1ad242", "title": "Framer X For Design - 5 Reasons Why I Switched", "url": "https://blog.iamsuleiman.com/framer-x-design-tool/", "published_at": "2020-05-26T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6dcb6b523", "title": "Build your UX Portfolio from Scratch – Choosing a Web Stack", "url": "https://blog.iamsuleiman.com/build-ux-portfolio-web-stack/", "published_at": "2019-08-07T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6dd2091d6", "title": "Build your UX Portfolio From Scratch – Design", "url": "https://blog.iamsuleiman.com/build-ux-portfolio-design/", "published_at": "2019-07-16T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6dd518bb7", "title": "Build your UX Portfolio From Scratch – Getting Started", "url": "https://blog.iamsuleiman.com/build-ux-portfolio-getting-started/", "published_at": "2019-07-01T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ddc87efb", "title": "Android Pagination Tutorial – Adding Swipe-to-Refresh", "url": "https://blog.iamsuleiman.com/android-pagination-tutorial-swipe-to-refresh/", "published_at": "2019-04-22T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6de708f32", "title": "How To Design A Great Mobile App Intro By Learning From The Best", "url": "https://blog.iamsuleiman.com/design-great-mobile-app-intro/", "published_at": "2018-07-02T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6df40f536", "title": "Android Pagination Tutorial—Handling Multiple View Types", "url": "https://blog.iamsuleiman.com/android-pagination-tutorial-recyclerview-multiple-view-types/", "published_at": "2017-08-08T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6dffc0ce6", "title": "Use Empty States to your Advantage - Better User Retention", "url": "https://blog.iamsuleiman.com/empty-states-advantage-user-retention/", "published_at": "2017-07-25T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6dffff783", "title": "Customize Color with Styled Google Maps in Android", "url": "https://blog.iamsuleiman.com/styled-google-maps-customize-color-android/", "published_at": "2017-07-04T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e0c0b77a", "title": "Android O Tutorial: Supporting Picture-in-Picture (PIP)", "url": "https://blog.iamsuleiman.com/android-o-tutorial-picture-in-picture-pip/", "published_at": "2017-06-22T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e1132b7c", "title": "Mega Guide to Android's Material Design Components", "url": "https://blog.iamsuleiman.com/mega-guide-android-material-design-components/", "published_at": "2017-05-30T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e12772e8", "title": "Android Architecture Components Tutorial - Room, LiveData and ViewModel", "url": "https://blog.iamsuleiman.com/android-architecture-components-tutorial-room-livedata-viewmodel/", "published_at": "2017-05-23T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e1570379", "title": "Horizontal Scrolling Lists in Mobile - Best Practices", "url": "https://blog.iamsuleiman.com/horizontal-scrolling-lists-mobile-best-practices/", "published_at": "2017-05-09T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e18f68ad", "title": "Android Image Gallery App: Using Gestures and Transition", "url": "https://blog.iamsuleiman.com/android-image-gallery-app-gestures-transition/", "published_at": "2017-04-25T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e1e40699", "title": "Design Techniques to Display Text over Background Images", "url": "https://blog.iamsuleiman.com/techniques-to-display-text-overlay-background-images/", "published_at": "2017-04-11T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e256c5a8", "title": "Android O Tutorial: Using Custom Font Resources", "url": "https://blog.iamsuleiman.com/android-o-tutorial-custom-font-resources/", "published_at": "2017-03-30T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e33aea50", "title": "Android O Preview: What Developers Need to Know", "url": "https://blog.iamsuleiman.com/android-o-what-developers-need-know/", "published_at": "2017-03-29T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e3ad5b03", "title": "Introduction to Google's Awareness API", "url": "https://blog.iamsuleiman.com/introduction-googles-awareness-api/", "published_at": "2017-03-14T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e40cfabc", "title": "Stop Using Loading Spinner, There’s Something Better", "url": "https://blog.iamsuleiman.com/stop-using-loading-spinner-theres-something-better/", "published_at": "2017-02-28T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e507c8b1", "title": "Android App shortcuts - How and When to use them", "url": "https://blog.iamsuleiman.com/android-app-shortcuts-how-and-when-to-use-them/", "published_at": "2017-02-21T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e5934b9b", "title": "Using Bottom Navigation View - Android Design Support Library", "url": "https://blog.iamsuleiman.com/using-bottom-navigation-view-android-design-support-library/", "published_at": "2017-01-31T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e643e281", "title": "Material Design Snackbar in Android - How and When to Use", "url": "https://blog.iamsuleiman.com/material-design-snackbar/", "published_at": "2017-01-24T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e6bb870e", "title": "Android Pagination: Error Handling", "url": "https://blog.iamsuleiman.com/android-pagination-error-handling/", "published_at": "2017-01-09T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e6f73b9b", "title": "Android Pagination: Using APIs with Retrofit and Gson", "url": "https://blog.iamsuleiman.com/android-pagination-recyclerview-tutorial-api-retrofit-gson/", "published_at": "2016-11-22T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e7007e16", "title": "Pagination Android Tutorial with RecyclerView: Getting Started", "url": "https://blog.iamsuleiman.com/android-pagination-tutorial-getting-started-recyclerview/", "published_at": "2016-11-01T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e786ea85", "title": "Material Design Onboarding in Android- Quickstart (Tap Target)", "url": "https://blog.iamsuleiman.com/material-design-onboarding-android-quickstart-tap-target/", "published_at": "2016-08-29T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e795a9ae", "title": "DayNight Theme Android Tutorial with Example", "url": "https://blog.iamsuleiman.com/daynight-theme-android-tutorial-example/", "published_at": "2016-08-08T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e824dbdc", "title": "Implement Parcelable to Bundle your POJOs", "url": "https://blog.iamsuleiman.com/implement-parcelable-bundle-pojos/", "published_at": "2016-06-26T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e837aa2f", "title": "RecyclerView Adapter in Android, made Fast and Easy", "url": "https://blog.iamsuleiman.com/recyclerview-adapter-android-made-fast-easy/", "published_at": "2016-06-07T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e935a232", "title": "Prepare your apps for Multi-Window in Android N", "url": "https://blog.iamsuleiman.com/prepare-apps-multi-window-in-android-n/", "published_at": "2016-05-17T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e98df13f", "title": "People API Android Tutorial - Part 1", "url": "https://blog.iamsuleiman.com/people-api-android-tutorial-1/", "published_at": "2016-04-19T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e9939c70", "title": "People API Android Tutorial – Part 2", "url": "https://blog.iamsuleiman.com/people-api-android-tutorial-2/", "published_at": "2016-04-19T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6e9e9198d", "title": "Bottom Navigation Bar Android Tutorial", "url": "https://blog.iamsuleiman.com/bottom-navigation-bar-android-tutorial/", "published_at": "2016-03-22T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ea1eaf90", "title": "Bottom Sheet with Android Design Support Library", "url": "https://blog.iamsuleiman.com/bottom-sheet-android-design-support-library/", "published_at": "2016-03-17T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ea3feaa5", "title": "Android SQLite Database Tutorial with Sugar ORM", "url": "https://blog.iamsuleiman.com/android-sqlite-database-tutorial-sugar-orm/", "published_at": "2016-02-22T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ea6fb595", "title": "Swipe to Dismiss for RecyclerView with ItemTouchHelper", "url": "https://blog.iamsuleiman.com/swipe-to-dismiss-recyclerview-itemtouchhelper/", "published_at": "2016-01-21T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6eaa557fd", "title": "Onboarding with Android ViewPager: The Google Way", "url": "https://blog.iamsuleiman.com/onboarding-android-viewpager-google-way/", "published_at": "2015-12-16T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6eb82bae6", "title": "Runtime Permissions - Android Marshmallow Tutorial", "url": "https://blog.iamsuleiman.com/runtime-permissions-android-marshmallow/", "published_at": "2015-11-26T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ebac33f1", "title": "Google Chrome Custom Tabs Android Tutorial", "url": "https://blog.iamsuleiman.com/google-chrome-custom-tabs-android-tutorial/", "published_at": "2015-11-16T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ec596263", "title": "How to create an Image Gallery App with Glide - Android Tutorial", "url": "https://blog.iamsuleiman.com/image-gallery-app-android-studio-1-4-glide/", "published_at": "2015-10-26T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ec7c6d51", "title": "Using Vector Assets for Icons in Android Studio 1.4", "url": "https://blog.iamsuleiman.com/using-vector-assets-for-icons-in-android-studio-1-4/", "published_at": "2015-10-06T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ecd443fc", "title": "Parallax Scrolling Tabs with Android Design Support Library", "url": "https://blog.iamsuleiman.com/parallax-scrolling-tabs-design-support-library/", "published_at": "2015-09-15T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6ed457e73", "title": "Material Design for Tablets", "url": "https://blog.iamsuleiman.com/material-design-for-tablets/", "published_at": "2015-09-08T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6edd9a3a6", "title": "Overlap a Transparent Status Bar", "url": "https://blog.iamsuleiman.com/overlap-a-transparent-status-bar/", "published_at": "2015-08-24T00:00:00+00:00" }, { "id": "01a0874b-3d2a-7165-b123-93e6eddde50b", "title": "Create Gmail Style List in Android", "url": "https://blog.iamsuleiman.com/create-gmail-style-list-in-android/", "published_at": "2015-08-13T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5d7d74a10", "title": "My Experience with the Moto G 3rd Gen", "url": "https://blog.iamsuleiman.com/my-experience-with-moto-g-3rd-gen/", "published_at": "2015-08-05T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5d8c3fa79", "title": "Make an Android Splash Screen (Launch Screen)", "url": "https://blog.iamsuleiman.com/android-launch-screen-splash-screen/", "published_at": "2015-07-31T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5d9a09915", "title": "Pinterest Masonry Layout (Staggered Grid)", "url": "https://blog.iamsuleiman.com/pinterest-masonry-layout-staggered-grid/", "published_at": "2015-07-27T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5da603ebd", "title": "Top 10 Material Design Libraries for Android", "url": "https://blog.iamsuleiman.com/top-10-material-design-libraries-for-android/", "published_at": "2015-07-20T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5db367c37", "title": "Circular Reveal Effect like WhatsApp in Android", "url": "https://blog.iamsuleiman.com/circular-reveal-effect-like-whatsapp-in-android/", "published_at": "2015-07-17T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5db62b06e", "title": "Design App Mockups with Adobe Illustrator & InVision", "url": "https://blog.iamsuleiman.com/how-to-design-app-mockups-like-a-pro/", "published_at": "2015-07-08T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5db6ec5e7", "title": "Material Design Android Ripple Effect", "url": "https://blog.iamsuleiman.com/android-ripple-effect/", "published_at": "2015-07-01T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5dbaef1ce", "title": "Integrate Facebook Login with Parse - Part 2", "url": "https://blog.iamsuleiman.com/facebook-login-with-parse-part-2/", "published_at": "2015-06-27T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5dc99d940", "title": "Integrate Facebook Login with Parse - Part 1", "url": "https://blog.iamsuleiman.com/facebook-login-with-parse-part-1/", "published_at": "2015-06-25T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5dcad302a", "title": "Tint Icons in Android for pre Lollipop", "url": "https://blog.iamsuleiman.com/tint-icons-in-android/", "published_at": "2015-06-21T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5dcc00124", "title": "Quick Return Pattern with Android Design Support Library", "url": "https://blog.iamsuleiman.com/quick-return-pattern-with-android-design-support-library/", "published_at": "2015-06-18T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5dd35098a", "title": "Create a Card Toolbar (Nested Toolbar) in Android", "url": "https://blog.iamsuleiman.com/create-a-card-toolbar/", "published_at": "2015-06-15T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5de339ab8", "title": "Add a Toolbar Elevation on pre Lollipop", "url": "https://blog.iamsuleiman.com/add-a-toolbar-elevation-on-pre-lollipop/", "published_at": "2015-06-08T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5de53e6f1", "title": "Material Design Tabs with Android Design Support Library", "url": "https://blog.iamsuleiman.com/material-design-tabs-with-android-design-support-library/", "published_at": "2015-06-06T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5df0055c8", "title": "Toolbar Animation with Android Design Support Library", "url": "https://blog.iamsuleiman.com/toolbar-animation-with-android-design-support-library/", "published_at": "2015-06-03T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5df9c94ad", "title": "Easy Navigation Drawer with Design Support Library", "url": "https://blog.iamsuleiman.com/easy-navigation-drawer-with-design-support-library/", "published_at": "2015-05-30T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e052188c", "title": "Android M", "url": "https://blog.iamsuleiman.com/android-m/", "published_at": "2015-05-28T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e0adbf7a", "title": "+1 Button with Google Play Services 7.3.0", "url": "https://blog.iamsuleiman.com/plus-1-button-with-google-play-services-7-3-0/", "published_at": "2015-05-14T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e1554dfb", "title": "DIY Floating Action Button Part 2", "url": "https://blog.iamsuleiman.com/diy-floating-action-button-part-2/", "published_at": "2015-05-08T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e1ad31e3", "title": "Create a Material Color Palette in NO time", "url": "https://blog.iamsuleiman.com/create-a-material-color-palette-in-no-time/", "published_at": "2015-05-04T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e1f89f1e", "title": "DIY Floating Action Button Part 1", "url": "https://blog.iamsuleiman.com/diy-floating-action-button-part-1/", "published_at": "2015-05-02T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e1fe2de3", "title": "AppCompat v22.1 Support Library", "url": "https://blog.iamsuleiman.com/appcompat-v22-1-support-library/", "published_at": "2015-04-28T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e21d30f4", "title": "Why ActionBarActivity is deprecated?", "url": "https://blog.iamsuleiman.com/why-actionbaractivity-is-deprecated/", "published_at": "2015-04-27T00:00:00+00:00" }, { "id": "01a0874b-3d2b-72f6-a4ce-b4f5e2c7fb99", "title": "Implement Floating Action Button - Part 2", "url": "https://blog.iamsuleiman.com/implement-floating-action-button-fab-part-2/", "published_at": "2015-04-25T00:00:00+00:00" }, { "id": "01a0874b-3d2c-706d-ae47-270f4f933539", "title": "Implement Floating Action Button - Part 1", "url": "https://blog.iamsuleiman.com/implement-floating-action-button-part-1/", "published_at": "2015-04-20T00:00:00+00:00" }, { "id": "01a0874b-3d2c-706d-ae47-270f5090bc0e", "title": "Toolbar Height in Landscape mode (FIX)", "url": "https://blog.iamsuleiman.com/toolbar-height-in-landscape-mode-fix/", "published_at": "2015-04-19T00:00:00+00:00" }, { "id": "01a0874b-3d2c-706d-ae47-270f514fe5cc", "title": "Why app design is important", "url": "https://blog.iamsuleiman.com/why-app-design-is-important/", "published_at": "2015-04-14T00:00:00+00:00" }, { "id": "01a0874b-3d2c-706d-ae47-270f51f9c85f", "title": "Android Material Design: Getting Started with Lollipop", "url": "https://blog.iamsuleiman.com/android-material-design-tutorial/", "published_at": "2015-04-12T00:00:00+00:00" } ] posts Claim your blog
Back to blog.iamsuleiman.com
Blog · corpus.blog/blogs/blog.iamsuleiman.com/posts

blog.iamsuleiman.com

blog.iamsuleiman.com

2026

2020

2019

2018

2017

2016

2015