ThemeExtensions | Decoding Flutter

Поділитися
Вставка
  • Опубліковано 2 тра 2022
  • Find out how to get the most value out of your Flutter app's theme, including how to use the new ThemeExtensions feature, arriving in Flutter in May, 2022. To see it in action, check out the DartPad below!
    DartPad → goo.gle/3ycoi1G
    Watch more Decoding Flutter episodes → goo.gle/DecodingFlutter
    Don’t miss an episode, subscribe to Flutter → goo.gle/FlutterYT
    #DecodingFlutter #Flutter #Developer
    product: Flutter - Development - User interface;
  • Наука та технологія

КОМЕНТАРІ • 73

  • @d.winkler
    @d.winkler 2 роки тому +70

    Finally something about styling and themes. What I still miss is a really good Documentation for each widget and parameter and the usage with image examples that would be perfect. Good job, like your Videos 👍

    • @flutterdev
      @flutterdev  2 роки тому +5

      Hi D. Winkler, you'll find tons of documentation on all our widgets on our site. Check it out here: docs.flutter.dev/development/ui/widgets

    • @d.winkler
      @d.winkler 2 роки тому +2

      @@flutterdev that's only half of what I would like.

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

      @@d.winkler Thank you for replying! Image examples of Theme classes is a really interesting idea. We will pass this on to our team!

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

      I would second the D. Winkler thought here.. Flutter is amazing but seems for new bees documentation is bit harder

  • @MikeNugget
    @MikeNugget 2 роки тому +28

    Flutter team at the beginning - lets hardcode everything in the semantics, yeah! Yeah, lets do this! Yohoo! Nice idea!
    Flutter team now - oh, crap.

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

      Same observation

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

      Haha, this is more or less 100% correct

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

      It was just a terrible idea.

  • @LucaFang
    @LucaFang 2 роки тому +28

    App theming is one of the few things that in Flutter really sucks, especially for someone that came from web development. Nice work, Flutter Team!

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

    Yes I have been waiting for this! Thanks Flutter!

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

    Where can I find some docs on what lerp (linear interpolation I guess) is in the context of flutter or material design or themes haha. Thanks!

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

    awesome video as ever. thanks

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

    Which stable version will this feature come out?

    • @craiglabenz9147
      @craiglabenz9147 2 роки тому +5

      This feature is currently in the beta channel and will appear in the next stable release.

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

    Super excited about the upcoming extensions 🔥

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

      We're excited that you're excited, Rody!
      If you enjoyed this video, be sure to check out more episodes of Decoding Flutter here:
      goo.gle/DecodingFlutter
      Happy Fluttering 😎

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

    The code snippet at 4:42 does not work, use this instead:
    extensions: [
    HeroCardStyle(),
    ],

  • @realjohnny
    @realjohnny 2 роки тому +4

    This man definitely has a great acting career ahead of him

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

      LOL!!! Very well said. 🤣 Move over Jim Carrey 🤣

  • @amirgamil
    @amirgamil 2 роки тому +12

    I'll be honest Craig. When Filip left and you arrived, I was disappointed. But I gotta say, I've come to like your style and your humour. And most importantly, you're clear as well. You're good man! Keep it up! 👍

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

      Well shucks - thanks! You wouldn't believe how big Filip's feet are, so I was a little intimidated myself 😂

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

      @@craiglabenz9147 You're doing a fine job of filling them my friend. Keep up the great work! 👍👏

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

    Been waiting for this! This is great, hope it lands at in new version released at Google IO

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

      It's in the beta channel today and will hit stable at the next release!

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

    Wow! finally 🤩🥳! thx!

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

    This will be very useful

  • @TheRRJShow
    @TheRRJShow 2 роки тому +12

    😂😂 expressions are on point...👌

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

    use double dimond bracket like (extensions: [
    ...])

    • @StrikerTVFang
      @StrikerTVFang 9 місяців тому

      Thank you! I was wondering why it wasn't working for me.

  • @redsun9594
    @redsun9594 2 роки тому +4

    This guy is hilarious, great video

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

    Does anybody understand "class MyClass extends ThemeExtension" with the nested class inside ? How can it work ?

    • @HungNguyen-pu1dv
      @HungNguyen-pu1dv 2 роки тому +2

      It's quite similar to class AbcState extends State when you write stateful widget code

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

      Trippy, I know.

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

      @@HungNguyen-pu1dv you mean ThemeExtension is an abstract class and we override lerp+copyWith function and then we 're good to go ? Seems logical now, thanks.

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

    Will there also be support for extending TextTheme?

    • @pierre-louisguidez2040
      @pierre-louisguidez2040 2 роки тому

      You can put anything in extensions, colors, text styles, and text themes!

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

    I am glad to see something about styling but it is so much boilerplate for just custom styling, it should be as simple as creating a StyleSheet for react native, I hope the Flutter team also thinks that this should be simplified in the future.

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

      In theory, Flutter's version of a stylesheet is the separated theme. What made this quite painful in the past was the lack of complete extensibility, like CSS obviously offers natively. ThemeExtensions should go a long way toward bridging that gap!

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

      @@craiglabenz9147 of course, I am not saying that this is not a very good step, the extensibility definitely needed some love, what I meant was more on the side of the trouble a dev needs to go through to extend a simple theme.

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

    That "You shall not pass" was EPIC, i thought it really was Gandalf for a sec, lol.

    • @hojdog
      @hojdog 2 місяці тому +1

      Easily amused

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

    nice, since which version of Flutter is it available ?

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

      In the DartPad mentioned Flutter version 2.13 is used.

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

      @@rivella99 That's correct - this feature is currently in the beta channel and will appear in the next stable release.

  • @Hasan-wf7wb
    @Hasan-wf7wb 2 роки тому

    Nice

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

    Hi flutter team i m just wanted to know that is there hard code push or dynamic update the app without uploading to app/play store is available in flutter

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

    Great

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

    The API looks a bit awkward tbh, but it's a step in the right direction

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

    Just a request to Flutter team: can we get some Flutter plugin addition to auto-write copyWith methods? takes a long time to do it manually and could be easily automated!

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

      Freezed package does that, also support toJson & fromJson when combined with json_serializable

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

      Normally your IDE has plugins/extensions to do that and more

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

    Flutter dev should please consider making the text font adapt to device selected fonts. It's hard doing the native thing.

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

      Hey there - The team is aware of this feature request, but unfortunately there's no solution yet. That's being tracked on this issue here: github.com/flutter/flutter/issues/48381

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

      @@flutterdev I'm glad you are aware of this issue. I was hoping to see this in flutter 3, but a little disappointed. I love flutter tho

  • @aouadicharaf1038
    @aouadicharaf1038 9 місяців тому

    ❤❤❤

  • @JohnDoe-fv5cu
    @JohnDoe-fv5cu 2 роки тому

    We'll use it. In a couple of years when all those millions of packages in our pubspecs support this new version of Flutter. Looking forward to it

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

      This is in beta now, will be in the next stable, and isn't a feature you need to wait for any external packages to support before you can start using it. The second you're ready to define a ThemeExtension, there's nothing that can stop you!

  • @farahrayis5928
    @farahrayis5928 2 роки тому +13

    This guy is so entertaining, it was a really fun and informative lesson. Thank you very much flutter.

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

      We appreciate your feedback and you're very welcome!

    • @craiglabenz9147
      @craiglabenz9147 2 роки тому +4

      Thanks! I really appreciate that :)

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

      Yes really entertaining for toddlers

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

    😁 I was just watching Lord of the Rings the other day

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

    I use Flutter Flex Scheme

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

    Amazing speaker, to be honest.

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

    When a human teach VS when a cartoon teach

  • @scottgreen3703
    @scottgreen3703 2 роки тому +5

    0:29 i didn't understand what you said? Please keep this lessons normal talking and simple and clear as much as you can so everyone can understand 🙏

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

      Yes. Please stop doing impressions. They just make your videos worse.

  • @scottgreen3703
    @scottgreen3703 2 роки тому +8

    I didn't understand 😕 please go straight to the example and avoid all the unnecessary stories and funny reactions, go straight to the problem then show an example explain it and that's it, keep it professional please

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

    Why just not making a normal video without the un funny comedy

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

    Funny eyes, exaggerated words, I don't like this host, I don't think he is a technical guy. Hope Emily be back

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

      but it is more effective to understand. Everything has relative