Lazy layouts in Compose

Поділитися
Вставка
  • Опубліковано 18 січ 2025

КОМЕНТАРІ • 63

  • @krisztianbotos168
    @krisztianbotos168 Рік тому +4

    Amazing training series on Jetpack Compose. You guys are crushing it! It's a pleasure to learn from you.

  • @codingwithmitch
    @codingwithmitch 2 роки тому +7

    Great tip about default height

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому

      We're happy to hear the tutorial was helpful!
      Be sure to check out the links in the description for even more tips and tutorials 😎

  • @codingwithmitch
    @codingwithmitch 2 роки тому +9

    Incase this ends up helping someone...
    We were animating visibility of a collapsible section in our lazy list by setting the "invisible" items to 0px height and this was causing a lot of latency.

    • @clementjoymasinamela4244
      @clementjoymasinamela4244 2 роки тому +1

      You need to come back Mitch, we miss your awesome content.

    • @farazahmed7
      @farazahmed7 2 роки тому

      yo Mitch wadduppp

    • @theren8311
      @theren8311 Рік тому

      If it's collapsible, why animate its measurement manually? Just use the AnimatedVisibility(Boolean) block around your composable, or take a look at the Animations docs to see how to handle performance, if it is the built in function really isn't suitable for your use case.
      My guess is you're skipping steps that makes it performant, and AnimatedVisibility would handle it. Just keep in mind that each an every step of the animation (every pixel you reduce by) triggers a recomposition of the specific composable, and every single change to the specific composable triggers a recomposition of the Lazy list.
      Also don't measure performance in a non release build (if you are). I've been collapsing cards in lists since Compose was beta, and I've never experience any jank, so just revise those manual implementations.

    • @theren8311
      @theren8311 Рік тому +2

      Also 13:14

  • @gilbertsenyonjo963
    @gilbertsenyonjo963 2 роки тому +6

    Dont mean to be rude, but I wonder if its just me who doesnt enjoy watching many people present in the same video/tutorial.

  • @ArtyomIvanyuk
    @ArtyomIvanyuk 2 роки тому +18

    Great video! Presenters (especially the one in a dark shirt) clearly explain the concepts, thanks!

  • @ivanvlasov8308
    @ivanvlasov8308 2 роки тому +3

    Thanks, very helpful! I also like how you invite speakers of different nationalities in one video, this earns respect

  • @StevdzaSan
    @StevdzaSan 2 роки тому +10

    Quite informative video filled with such a great presentation resources. Thanks guys!❤

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому +3

      We appreciate the kind words, Stevdza-San! You can also check out our guide on Custom layouts for Jetpack Compose: goo.gle/3CDQzzX and an amazing video with more helpful tips and tricks regarding Layouts: goo.gle/3fCcher
      Happy learning ❤️

  • @En_Diel
    @En_Diel 10 місяців тому

    These are very helpful, keep them coming

  • @abdonasr1222
    @abdonasr1222 2 роки тому +3

    Wow!! so valueable performance tips

  • @nesyou4342
    @nesyou4342 2 роки тому +2

    Greet! but there's no documentation to how to implement custom LazyLayout

    • @andreykulikov1844
      @andreykulikov1844 2 роки тому +1

      Yes, we in fact intentionally didn't show it as the api is in its early stages and can change a lot. We didn't want this video to became outdated because of that. LazyLayout is not yet production ready, but I hope that the public documentation and the ability to read the sources of our components will allow the early adopters to try it out

  • @Darq_IsLive
    @Darq_IsLive Рік тому

    Lepotica, steta da sam pre star za nju :)

  • @TashingaPemhiwa
    @TashingaPemhiwa 2 роки тому +1

    Great video on working with lists in Compose. How does one achieve prefetching?

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому

      Hi Tashinga! Here's a link that might help you on your quest to learn more about prefetching: goo.gle/3ur5xof
      😀

  • @mill107
    @mill107 3 місяці тому

    I'm not sure I fully understand on the topic regarding 'Multiple elements in one Item', anyone know where can i find documentation or more info? thanks in advance.

  • @gameofcodes9832
    @gameofcodes9832 2 роки тому

    In 16:15 let's say I want to have some modifiers for items block (not in while LazyColumn) how can I do so?

  • @luisdavidorellana
    @luisdavidorellana 2 роки тому +1

    Gran video, información valiosa! Muchas gracias por los tips que nos dan 💚

  • @gregbar6583
    @gregbar6583 Рік тому

    What would you advise to implement an "excel-type" two-dimension scrollable grid of constand grid size?
    It seem that nesting LazyRow in LazyColumn (or other way) is not good approach. Any suggestions?

  • @coldwised
    @coldwised Рік тому +1

    I'm using compose 1.4.0-rc01, LazyVerticalGrid with coil. Grid is so laggy, Recycler view is much better, idk how is this stable (release build)

  • @Musa-al-Khwarazmi
    @Musa-al-Khwarazmi 2 роки тому +1

    I hope some day we get hard working layouts.

  • @حميدبوعصيده-غ3ر
    @حميدبوعصيده-غ3ر 2 роки тому

    can I get google developers training courses like Jetpack Compose for Android Developers
    as pdf documentation

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому +1

      Hi! You can check out the documentation for JetPack Compose and refer to it anytime on your journey here 😁: developer.android.com/jetpack/compose/documentation

  • @joesilva-rodriguez9
    @joesilva-rodriguez9 2 роки тому +2

    That moment when you don't have a scroll bar and your PO wants a scroll bar. Bad...

  • @appsbeyond
    @appsbeyond 2 роки тому +2

    Awesome video. Was hoping to get a hint of how to provide a background around a "section" of items since it is advised not to next two scrollables that scroll in the same direction.

  • @VirgilioSolano
    @VirgilioSolano Рік тому

    Thank you guys... awesome

  • @ДенисБекк
    @ДенисБекк 2 роки тому

    Hi! When we can see the implementation of StaggeredGridLayout based on LazyLayout?

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому

      Thank you for the question! We are working on something like this. Keep an eye on our social media pages for updates!

  • @PsijicV
    @PsijicV 2 роки тому

    LazyGrid can't be used inside other scrollable even is I set userScrollEnabled = false.

  • @TheMikkelet
    @TheMikkelet 2 роки тому

    HOW DO I UPDATE THE LIST WHEN I ADD/REMOVE ITEMS

  • @tomcat2096
    @tomcat2096 2 роки тому +1

    Very helpful for me thanks Google

  • @adrian110288
    @adrian110288 2 роки тому

    Great video. Thanks! I tried adding a custom Arrangement.Vertical to my app and that part shown on the video by Andrey worked well but then tried adding spacing to it like what Arrangement.spacedBy does and failed. Are there any examples of a custom arrangement with item spacing?

    • @andreykulikov9166
      @andreykulikov9166 2 роки тому

      When you implement your own Arrangement.Vertical you can also override spacing property, it is defined on the same interface

    • @adrian110288
      @adrian110288 2 роки тому

      @@andreykulikov9166 i have overriden the spacing property but still havent got the spacing applied. I was thinking I would need to factor the spacing in the calculations for outPositions?

    • @andreykulikov9166
      @andreykulikov9166 2 роки тому

      @@adrian110288 yeah, you need to provide your spacing for the spacing property, this will be used when you have enough items to fill the whole viewport, and then also take into the account the spacing manually when you do the outPositions calculations for the case when you have less items than needed to fill the viewport

  • @StraplessReligion
    @StraplessReligion 2 роки тому

    Is there a way to add space individual for rows ?

    • @andreykulikov9166
      @andreykulikov9166 2 роки тому

      Could you please elaborate a bit more?

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому +1

      The two links provided here can help fill you in on how to add space in-between items and offer another helpful resource to aid you on your Compose journey! 😃
      Content Spacing: developer.android.com/jetpack/compose/lists#content-spacing
      Arrangements: developer.android.com/reference/kotlin/androidx/compose/foundation/layout/Arrangement#public-functions_1

  • @tashi7160
    @tashi7160 2 роки тому +3

    i am too lazy now.

  • @dimidbrodsky9523
    @dimidbrodsky9523 2 роки тому

    i cant import LazyHorizontalGrid in project?

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому +1

      Could you please check if you have added the following dependency to your project: "androidx.compose.foundation" and that you are running on the latest 1.2.0-beta02 Compose version? Thanks!

  • @siva_subramaniam
    @siva_subramaniam 2 роки тому

    bm - 5:21

  • @ssverma1916
    @ssverma1916 2 роки тому +1

    Damn good!

  • @aabhishek4911
    @aabhishek4911 2 роки тому

    Where is this common performance gotchas talk they keep mentioning ,

    • @patryk11258
      @patryk11258 2 роки тому

      EOQB8PTLkpY (ID of YT video)

    • @andreykulikov9166
      @andreykulikov9166 2 роки тому

      ua-cam.com/video/EOQB8PTLkpY/v-deo.html

    • @andreykulikov1844
      @andreykulikov1844 2 роки тому +7

      It is now called "Performance best practices for Jetpack Compose". You can find it on the same channel "Android Developers"

  • @USS_Daedalus
    @USS_Daedalus Рік тому

    i should migrate my project to Compose 😮

  • @dimidbrodsky9523
    @dimidbrodsky9523 2 роки тому

    why I can't add LazyRow in bottomsheet?

    • @AndroidDevelopers
      @AndroidDevelopers  2 роки тому

      Hi Dimid,
      We are not aware of LazyRow incorrectly working inside a BottomSheet. Please file a bug in our bug tracker if you think you found it not working for you 🙂

  • @mikeshilovski1512
    @mikeshilovski1512 2 роки тому +1

    Magic

  • @FelipeBrunoRamirez
    @FelipeBrunoRamirez Рік тому

    Hola soy felipe desanjoseterueltepeojuma puebla

  • @toystoryscarymovie-forkids3323

    Beginner Friendly NOT!

  • @j2shoes288
    @j2shoes288 6 місяців тому

    I understood what the woman was saying.