Stop using Spacer() in SwiftUI

Поділитися
Вставка
  • Опубліковано 10 лют 2025
  • Spacer is an easy solution to move Views around on the screen. And while in complex screens it makes sense to use this View, in other situations it makes the code a bit cluttered. Let's explore an alternative using the frame ViewModifier.
    🚀 LaunchBuddy: apple.co/3iFcjjW
    📚 Try CWC+: bit.ly/cwc_flo
    ☕️ Buy me a coffee: ko-fi.com/flow...
    👋 Links: flowritesco.de
    🛠 Forge: apple.co/3riG8MQ
    Affiliate Links ❤
    📕 SwiftUI & Combine Books: www.bigmountai...
    🔬 Get Reports about your apps: appfigures.com...
    📊 Privacy focused analytics: dashboard.tele...
    💻 The most powerful mac app for developers: devutils.app/?...
    ☕️ Support me: ko-fi.com/flow...
    If you have any video suggestions please feel free to let me know by a comment.
    Get in contact via
    Twitter: / flowritescode

КОМЕНТАРІ • 45

  • @nickdalts
    @nickdalts 6 місяців тому +16

    I had absolutely no idea about that autocompletion trick, thanks!

    • @Ugeen-Huge-Jeans
      @Ugeen-Huge-Jeans 4 місяці тому

      Yeah, is there a trick to add a autocompleted parameter to a existing function?

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

    Good suggestion for a neat and readable code. Thank you!

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

    Oh! You finally make video about spacer!
    I’ve wait for this from you said on short video until now! 😁

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

    Didn't know about the autocomplete trick!

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

    Great tips! Thanks a lot for the video.

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

    I have been creating SwiftUI tutorials from last two months and this is a great piece of advice for aligning texts or view. It will increase readability by keeping code clean.
    Will definitely use this from now onwards.
    Big Thanks!! :))

  • @easybusinessou
    @easybusinessou 5 місяців тому +3

    Great content! Just a small suggestion: it would be even better if the focus was more on the screen code with fewer transitions. Also, keeping your photo in a small circle in the corner works well. Thanks for the valuable insights!

  • @natgenesis5038
    @natgenesis5038 9 місяців тому +1

    Very facts i just found that , since i started caring other screen sizes .

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

    Nice Star Wars helmets!
    And advices are very useful

  • @rahuljamba5846
    @rahuljamba5846 9 місяців тому +1

    Great thanks for sharing your knowledge 📚

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

    Totally agree. 4 Spacer() to only keep a Text in a corner seems quite verbose 😅Thanks for the tip

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

    Thanks! Simplified a lot.

  • @marcesmack
    @marcesmack 5 місяців тому

    Great video! What’s the best way to keep the size of the window or at least a minimum size and proportions on visionOS?

  • @maulikshah6461
    @maulikshah6461 12 днів тому

    bro. you are right but have check frame? it cover full screen frame.

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

    Great tip! 😃

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

    Great! Thanks! 🙌

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

    Very useful, thanks!

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

    Great 💡 tips thanks for sharing

  • @fsck-music
    @fsck-music 11 місяців тому +1

    What's the shortcut to take what you've highlighted and place it within curly braces? I've been doing this by hand 💀

    • @FloWritesCode
      @FloWritesCode  11 місяців тому +1

      Just use the curly braces, there's no shortcut. Xcode automatically places them around the selected lines :D

  • @Ugeen-Huge-Jeans
    @Ugeen-Huge-Jeans 4 місяці тому +1

    I noticed that frame() doesn’t work reliably. Spaceer() however does the job all the time.

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

    Great video! Thank you! Just a note... did you notice the flicker after most of the pans? It is quite unnerving and distracts from the excellent content.

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

      Thanks. I already passed that on to this video‘s editor and it seems to have been a rendering issue in Premiere. Will hopefully be fixed in all videos going forward👍🏼

  • @simonIsDev
    @simonIsDev 11 місяців тому +1

    it's so usefull for me

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

    Thanks! Is using overlay efficient rather than ZStack+VStack?

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

      Since SwiftUI is closed-source, I really don't know how things are implemented under the hood :/

  • @Scott-oe7dv
    @Scott-oe7dv 9 місяців тому

    what was the short cut you used to add outer {} to a view?

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

      No shortcut, just select mutliple lines and type a {

  • @natgenesis5038
    @natgenesis5038 9 місяців тому +1

    GeometryReader,Stacks and Padding are enough

  • @CarstenVoss-oh2el
    @CarstenVoss-oh2el 7 місяців тому

    Sorry but this is title is confusing for new people. This works as long as you use view which tries to take as much space as possible (e.g. Color).
    If one would use your advise and overlay a Text with an Image, one need to set a frame on the text with the correct size and alignment for that frame. Additionally, as the modifier name suggests, the content of the original view could overlapped by the overlay.

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

    Of don’t get what’s wrong with spacer(). Easy to read.

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

      Yup, in some cases it really makes sense. This video just shows an alternative that can be cleaner at times :D

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

      @@FloWritesCode I agree, different scenarios for different needs

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

      @@FloWritesCode Your video is literally called Stop using Spacer() in SwiftUI...

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

      Other screen sizes

  • @Hewhogotslapd
    @Hewhogotslapd 10 місяців тому +1

    Title is misleading for beginners. Geomettery reader is great for the example that you shared, however for more simple UIs Spacer is much easier to use and creates less code complexity. Otherwise great video.

    • @FloWritesCode
      @FloWritesCode  9 місяців тому +3

      How is GeometryReader relevant here?

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

      For all screen sizes spacer() is nightmare . GeometryReader is very powerful for all screen sizes and position .