Урок 24: "Основы Flutter - CustomSingleChildLayout и CustomMultiChildLayout"

Поділитися
Вставка
  • Опубліковано 7 лис 2024

КОМЕНТАРІ • 72

  • @maksimp5163
    @maksimp5163 29 днів тому +1

    Я начал изучать флаттер, и даже в 2024 вы остаетесь одним из лучший каналов кто выпустил обучение по языку. Спасибо за ваш труд

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

    очень мало просмотров и комментариев, но вы продолжаете свой труд. Спасибо!

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

    Даа... Голова конечно раскалывается)). Спасибо за такие прекрасные уроки.Если бы не вы, то не знаю кто бы мог такой бесплатный и продуктивный курс записать по Dart & Flutter )

  • @ehson-lk3gz
    @ehson-lk3gz 3 роки тому +9

    оууу, будет бессонная ночь! спасибо за то , что вы делаете

  • @dmitry9088
    @dmitry9088 3 роки тому +7

    "Flutter простой и лаконичный" - говорили они... 90 строк кода, чтоб разбить текст на три колонки так как нам нужно)) В свифте и реакт нэйтив так же?) А так мне нравится. Многое не до конца понимаю, но пишу код и делаю заметки. Думаю на реальных задачах как минимум буду знать, где искать ответ. А дальше с практикой станет понятнее)

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

    В Dart текст можно умножать на число, чтобы быстро увеличить количество текста. 'da' * 100 отобразится как сто раз 'da' подряд. Удобно для тестирования на большой текст.
    Спасибо за разбор виджетов)

  • @flowerinpower
    @flowerinpower 3 роки тому +4

    Здравствуйте,
    Благодарю за то, что вы делаете! Ваш канал это находка. Всё очень круто: от голоса который приятно слушать, до вербозности подачи материала!
    Я посмотрел пока только единственный урок, но планирую посмотреть всё что у вас тут есть!

  • @МаксимКищенко-я9с
    @МаксимКищенко-я9с 2 роки тому +2

    Ваши лекции просто бомба!. Перерыл не один канал на русском или англ. но ваш контект просто лучший! Почти год учу Flutter, около полугода пишу реальный web проект по примеру архитектуры ментора. Казалось, что вот вот что то начинаю понимать! Но посмотрел я ваши уроки и осознал, что еще ничего толком не знаю) Надеюсь после ваших видео начну куда осознаннее использовать знания.

  • @ДмитрийУрванцев-у1ц

    Жень, подписался на boosty. Ещё раз спасибо Тебе!!! И всех призываю, для нас копейки, а для Автора поддержка!

  • @evgeniydoronin
    @evgeniydoronin 3 роки тому +16

    Огромное спасибо! Буду очень признателен если шрифт увеличите в последующих роликах, мелко все очень)

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому +7

      постараюсь не забыть это сделать, если забуду напоминай)

  • @PavelGlazachev-b4n
    @PavelGlazachev-b4n Рік тому

    Спасибо! Достаточно сложные для меня темы были, но попрактиковал после просмотра и все понял.

  • @HaKoIIuTeJIb
    @HaKoIIuTeJIb 3 роки тому +1

    Всегда пишу код вместе с вами, очень помогает усвоить материал. Спасибо большое.

  • @sovrinfo
    @sovrinfo 3 роки тому +1

    Большое спасибо за ваш труд!!! Коммент в поддержку!

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

    Круто. Очень интересно, как детектив. Спасибо)

  • @ГеннадийКирев
    @ГеннадийКирев 2 роки тому

    Спасибо за ваши уроки. Очень подробно и главное понятно для того кто начал с нуля. Очень хотелось бы увидеть урок про различный сахарок и как его настраивать (на уровне джуна). А особенно про Ctrl+клик и описания которые подсказывает сама IDE и SDK. Перерыл весь интернет мамой клянусь нет нигде этого.

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

    Кстати tight читается как тайт
    Align - Элайн
    Alignment - Элайнмент

  • @ЕвгенийВладимирович-ш1с

    Евгений, огромнейшее спасибо за ваш труд, это очень круто) Бонус вам в карму))

  • @Egor-gy9bj
    @Egor-gy9bj 2 роки тому

    Дядя Жень, голова закипела!)

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

    отлично объясняешь! )

  • @ahliyorshodiev1986
    @ahliyorshodiev1986 3 роки тому

    Спасибо за уроки очень помогли)

  • @faizulla5838
    @faizulla5838 3 роки тому +1

    21:12 извините, как Вы "проваливаетесь" в виджет? или какое сочетание клавиш? на андроидСтудио теже?

  • @romandg884
    @romandg884 3 роки тому

    спасибо вам! ) огромное

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

    хороший разбор. спасибо!
    а будут видео про натягивание "бизнес-логики" на верстку?
    какой длинны планируется курс?

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

      конечно, как только с версткой разберёмся. Там будет много уроков, начиная от setState заканчивая всеми архитектурами)

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

      конечно будет и сеть и хранение данных и вот это вот все))

    • @valerijt4344
      @valerijt4344 3 роки тому

      @@LearnDartFlutter хороший план.
      Планируется ли работа с периферией (гиро, NfC, Bluetooth)?

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому

      Не планировал, но возможно когда нибудь расскажу)

    • @valerijt4344
      @valerijt4344 3 роки тому

      @@LearnDartFlutter это уже тонкости)
      Сначала "учи базу до отказу"

  • @DarDarbl4
    @DarDarbl4 3 роки тому +1

    Не воспринимай негативно, вопрос-совет может рассказывать сразу про более общие фундаментальные вещи, как ты делал в первых уроках, например сразу по месту рассказать что такое Делегат, ведь это понятие не встречалось ранее насколько я понял, и оно более широкое чем только Дарт/Флаттер. Ведь Delegate не просто так пишут, если знать суть понятия сразу станет ясно примерно что это и зачем по имени объекта)

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому +1

      Но это просто название класса в данном случае)

    • @DarDarbl4
      @DarDarbl4 3 роки тому

      @@LearnDartFlutter Да, но название о чем то говорит не так ли? Про вопрос выбора имен что это сложная задача ты знаешь не по наслышке, правильных имен. Ок) You are the boss))

  • @faizulla5838
    @faizulla5838 3 роки тому

    Задача так и не решена, 27:20 разговор шел чтобы средний элемент остается по центру .... по ходу пьесы мы все таки согласились что это 49:23 тоже не плохо ... выходит не стоит этот огород городить, второй элемент будет все равно при всех способах смещен с центра... и не так как нас просили дизайнеры 26:34.
    3 урока за 1 день.... это просто жесть, мозг кипит )))

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому

      я уже не помню точно что я там делал, но разве я не поставил центральный элемент по центру? со смещением если какая то надпись больше?

  • @hardway3595
    @hardway3595 3 роки тому

    Евгений здравствуйте, отличный контент!
    При помощи делегата определяется размер CustomMultiChildLayout. В методе getSize жёстко установлена высота 100. По ширине всё сделано хорошо и гибко, но при добавлении контента в колонки, расширение контейнера по высоте не происходит, и контент просто не отображается. Вопрос в том как сделать, чтобы при увеличении высоты child'ов увеличивалась и высота родительского виджета?

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

    45:21 почему HOffset а не XOffset? типо x y

  • @СобакаСобака-щ5ц
    @СобакаСобака-щ5ц 3 роки тому +2

    Очень сильно на самом деле тяжело понять зачем такую точную калибровку элементов делать. Я к середине если честно отключился для чего все это нужно. Но спасибо, последний лейаут классный. Нарисовал им зигу из контейнеров (не знаю для чего еще пока применить) (не одобряем)

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому +1

      Вообще я же сразу привел самый простой пример, выравнивание элементов как в appBar)

  • @Anakin-fp2pf
    @Anakin-fp2pf 9 місяців тому

    Пока что не особо все понял но "пока что" изучу разные источники, получу больше опыта и вернусь еще раз

  • @temirlandzholdoshbekov555
    @temirlandzholdoshbekov555 7 місяців тому

    👍👍👍👍👍

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

    А почему нам нельзя вставить SizedBox вместо какого-то элемента тем самым на экране будет пусто? Просто ради такого пользоваться таким сложным виджетом , не очен ьпонятно зачем. Но вот некоторые вещи конечно интересные можно делать с ним.

    • @lucefan2816
      @lucefan2816 7 місяців тому

      Я не понял вообще зачем этот виджет без него можно сделать, очень сложный.

  • @Макс523
    @Макс523 2 роки тому

    OK!

  • @АндрейКузьмин-щ4ь
    @АндрейКузьмин-щ4ь 3 роки тому

    А про bloc планируются уроки?

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому

      да)

    • @АндрейКузьмин-щ4ь
      @АндрейКузьмин-щ4ь 3 роки тому

      @@LearnDartFlutter но наверное ещё не скоро?)

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому

      да, не скоро, сначала надо основы рассказать)

    • @АндрейКузьмин-щ4ь
      @АндрейКузьмин-щ4ь 3 роки тому

      @@LearnDartFlutter спасибо, буду ждать. Что то вообще не могу разобраться с ним, инфы мало как то

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому

      вообще там есть целый сайт с докой и кучей примеров по блоку)

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

    заливайте все коды в github please

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

    37:20

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

    Если будете перезаписывать, то увеличьте шрифт, на мобилке не комфортно даже с зумом смотреть. И фон белый уберите отовсюду, в глаза лупит когда на ночь смотришь. И хрящами не щелкайте, вредная привычка и слышать это тоже не приятно. Варешку на одну руку наденьте на период отвыкания.
    В остальном спасибо.

  • @johnjohnson9119
    @johnjohnson9119 3 роки тому

    Спасибо, все прекрасно, в качестве пожелания - произносите пожалуйста правильно английские слова, а то когда слышу "алигмент" да "тигхт" просто бесится начинаю. Это же нетрудно послушать как они произносятся.

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому

      спасибо за отзыв, но с английскими словами извини, я с ним не дружу) читать читаю, а произношу плохо) и улучшать эти навыки только ради хороших уроков не очень продуктивно(

    • @LearnDartFlutter
      @LearnDartFlutter  3 роки тому

      Но вообще если очень хочется, можешь мне в телеграмме писать, какие ошибки я допускаю в произношении, возможно и запомню))

    • @poteryal_trusy
      @poteryal_trusy 3 роки тому +1

      @@DartMitai обесценивание фидбека не принесет улучшений.
      На обеих сторонах если интересны улучшения, фидбека дайте и примите больше, йода говорит

    • @ЕвгенийВладимирович-ш1с
      @ЕвгенийВладимирович-ш1с 3 роки тому

      Евгений делает крутой контент, а ему за английский предъявляют :)

    • @TheAlasheev
      @TheAlasheev 3 роки тому

      @@ЕвгенийВладимирович-ш1с ну тхин (tight) реально мозг выносит)

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

    *Я новичок во Flutter, но к концу видео появилось ощущение, что автор и сам уже запутался в том, как и что хотел сделать изначально. Если кому-то нужно центрировать второй элемент, в независимости от размеров других элементов, то можно немного изменить метод performLayout() на что-то типа этого:*
    const minOtherElementWidth = 100;
    final middleElementMaxWidth = size.width - minOtherElementWidth;
    final middleElementSize = layoutChild(
    2,
    BoxConstraints.loose(Size(middleElementMaxWidth, size.height)),
    );
    var middleElementHOffset = size.width / 2 - middleElementSize.width / 2;
    final middleElementYOffset =
    size.height / 2 - middleElementSize.height / 2;
    positionChild(2, Offset(middleElementHOffset, middleElementYOffset));
    final leftElementMaxWidth = middleElementHOffset;
    final leftElementSize = layoutChild(
    1,
    BoxConstraints.loose(Size(leftElementMaxWidth, size.height)),
    );
    final leftElementYOffset = size.height / 2 - leftElementSize.height / 2;
    positionChild(1, Offset(0, leftElementYOffset));
    final rightElementMaxWidth =
    size.width - middleElementHOffset - middleElementSize.width;
    final rightElementSize = layoutChild(
    3,
    BoxConstraints.loose(Size(rightElementMaxWidth, size.height)),
    );
    final rightElementHOffset = size.width - rightElementSize.width;
    final rightElementYOffset = size.height / 2 - rightElementSize.height / 2;
    positionChild(3, Offset(rightElementHOffset, rightElementYOffset));

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

      Если изменить вторую строчку на final middleElementMaxWidth = size.width - minOtherElementWidth * 2.5; Будет выглядеть так, как и должно, ровно 33% каждому. При min = 100