Программирование : Dart & Flutter по-русски
Dart & Flutter по-русски
Программирование : Dart & Flutter по-русски
Sergey
Задам ещё раз вопрос утром, вдруг кто знает: странный эффект со сдвигом многострочного текста на кнопке, в вебе. первая строчка сдвигается на пробел при наведении курсора.
Andrew Ka
[
{
"type": "link",
"text": "https://youtu.be/zXuj_DdYn0M"
}
]
Alexander PhatoM
[
"Есть кто с Беларуси, у всех нет доступа к ",
{
"type": "link",
"text": "pub.dev"
},
"?"
]
Andrey Tsvetkov
а что, в Беларуси интернет включили?
Andrew Ka
[
{
"type": "link",
"text": "https://pub.flutter-io.cn/"
}
]
Alexander PhatoM
[
"периодически кто то балуется у власти... Только почему то ",
{
"type": "link",
"text": "pub.dev"
},
" кажется заблочили насовсем"
]
Alexander PhatoM
только с vpn получилось, спасибо
Michael Bazilique
[
"Ребят, у меня при запуске тестов флаттер не видит pubspec.yaml в либе дарта, хоть он там есть. Сталкивался кто-то с этой ошибкой? \n",
{
"type": "pre",
"text": "Could not find a file named \"pubspec.yaml\" in \"C:\\Users\\Acer\\AppData\\Local\\Pub\\Cache\\hosted\\pub.dartlang.org\\_fe_analyzer_shared-7.0.0\".",
"language": ""
},
""
]
Michael Bazilique
очистка паб кэша, и т.д не помогает
toTheMoon??
Кто-то ставил аудио плагин?
Vyacheslav
99% разработчиков
toTheMoon??
Cocoapods не жаловались??
Vyacheslav
пиши уже конкретный вопрос
Vyacheslav
а то вокруг да около
toTheMoon??
[
{
"type": "mention",
"text": "@CoMatu"
},
" А можно название плагина точное? Я пока не перепробую все варианты, не могу жаловаться"
]
Vyacheslav
[
"?? ",
{
"type": "link",
"text": "https://pub.dev/packages?q=audio+player"
},
"\nвыбирай любой, смотри оценки и возможности"
]
toTheMoon??
[
"Та я по гайду мэтт керолла из флаттер тим пытался в плеер, но его плагин runner не жалует \n",
{
"type": "link",
"text": "https://pub.dev/packages/fluttery_audio_temp"
},
""
]
Lakavy
Подскажите пожалуйста как сделать такое затемнение у комментариев как здесь
Anton Zheltov
попробуйте цвет фона у коментариев например black87
Sergey Shobin
ShaderMask мб подойдёт
Lakavy
Он все делает этим цветом
Lakavy
Да, то что нужно?? Спасибо огромное)
Sergey Shobin
Там градиент от серого к прозрачному
Lakavy
Мне именно нужно было, чтобы по концам был переход из полу прозрачного в полный прозрачный
Kirill Aparin
Как узнать в чём проблема, открываю приложение и оно тупо закрывается, нет никаких выводов в консоле
Kirill Aparin
Хоть дебаг, хоть нет
Kirill Aparin
А раньше всё работало
Kirill Aparin
Могу залить на гит
Александр Виноградов
[
"День добрый, подскажите пожалуйста, если на ",
{
"type": "link",
"text": "pub.dev"
},
" у пакета не указана поддержка web есть шанс, что все же запустится на нем? Конкретно про ntp спрашиваю"
]
Щерба Константин
Всем привет! Ребят хочу использовать в проекте bloc патерн с чистой архитектурой , используются ли на практике какие нибудь DI библиотеки или может это во flutter делается проще чем в нативной андройд разработке. Поделитесь пожалуйста советами. За ранее спасибо!
Аtaй
Попробуй флаттер клин Флаттер гет
Sergey Shobin
Раньше это вчера?
Kirill Aparin
Я после этого не менял ничего
Kirill Aparin
Сделал AppBundle залил в магазин, а он также крашится
Kirill Aparin
Хотя Apk не крашился
Sergey Shobin
Писал что-то сам в папке андроида?
Kirill Aparin
В какой именно
Sergey Shobin
Сохрани куда-нибудь, удали папку андроида, потом flutter create . (создаст папку андроида) и вставь что сам писал
Sergey Shobin
На iOS мне помогало
Kirill Aparin
Понял, спасибо
Stanislav Ilin
Всем привет ??? Подскажите пожалуйста, есть какая-то возможность запретить перезагружать данные FutureBuilder при изменении стейта у виджета, который он возвращает ?
Andrew Ka
[
{
"type": "link",
"text": "https://github.com/flutter/flutter/issues/11426#issuecomment-414047398"
}
]
Stanislav Ilin
Огромнейшее спасибо O?O?O?
Andrew Ka
[
"Другой пример, я сделал очередь загрузки картинок на этой штуке ??\n\n",
{
"type": "link",
"text": "https://github.com/comerc/minsk8/blob/ba0274e15be77739df8e372ceb6e51c48c176bea/lib/screens/add_unit.dart#L371"
},
""
]
Stanislav Ilin
Пока первого примера мне хватило за глаза. Но я в закладки положу, вдруг ещё потребуется)
Alexandr Borisovich
Есть интеграция с андройодом. Я хочу запускать флаттер первым экраном, для этого я в манифесте меняю точку входа. Но вот засада. При этом ругается на No implementation found for method getBatteryLevel on channel samples.flutter. Копипаста с рабочего примера копипастой в нужный проект приводит к этому. Может ли быть это связано с тем что из за манифеста код андройда не проинициализировался и соотвественно в нем не зарегистрирован код принимающий стороны?
krau5
[
"Ребят, я жоска извиняюсь, если вопрос и его описание тупое.\nЯ короче сделал проект через ",
{
"type": "code",
"text": "flutter create"
},
"\nРешил запустить, включаю дебаг, выбираю flutter app, а в ответ кидает эту ошибъку"
]
Alexandr Borisovich
там же написано все, flutter doctor
Angry TaigaFox
[
{
"type": "mention",
"text": "@bunopus"
}
]
Kuanysh
Всем привет! У меня процессор AMD. Не получается установить android studio.Studio только на Intel модно установит. Есть решение ?
Comrade77
А в чем иммено проблема? У меня тоже процессор АМD и никаких проблем нет с Android Studio
Comrade77
[
"Почитай тут, может найдешь решение ",
{
"type": "link",
"text": "https://habr.com/ru/post/429610/"
},
""
]
krau5
была штука с лицензиями, с ними разобрался, а эта че?
Alexandr Borisovich
там же написано все, это же не китайский
krau5
я за то, что у меня они установлены, но их не видит
Alexandr Borisovich
перезагружался?)
krau5
несколько раз уже переустановил плагины, перезагрузил иде+терминал и ничего не изменилось
imya familia
У меня тут ряд вопросов, если вам знакома тема то можете отвечать не на все, а только то что вам известно. Тема касается гуглплэя и эплстора. Вопросы: 1)Какой максимальный размер приложения можно загружать 2)Если я собираюсь распространять приложение в разных странах то мне нужно переводить каждую копию приложения и загружать для каждой страны 3)Если возникнет вопрос авторских прав то удалят весь аккаунт со всеми приложениями или только в конкретной стране и конкретное приложение 4)Как часто и от какой суммы можно выводить заработанные средства
imya familia
У меня тут ряд вопросов, если вам знакома тема то можете отвечать не на все, а только то что вам известно. Тема касается гуглплэя и эплстора. Вопросы: 1)Какой максимальный размер приложения можно загружать 2)Если я собираюсь распространять приложение в разных странах то мне нужно переводить каждую копию приложения и загружать для каждой страны 3)Если возникнет вопрос авторских прав то удалят весь аккаунт со всеми приложениями или только в конкретной стране и конкретное приложение 4)Как часто и от какой суммы можно выводить заработанные средства
Andrey Novatovski
4. Раз в месяц, от бакса вроде или от 100 баксов, не помнб
Andrey Novatovski
2. Надо делать в приложении локализацию
krau5
кароч плагины как не видило, так и не видит, но зато приложение запускает
krau5
проблема решена??????
Alexey
Подскажите пожалуйста как преобразовать List в int. В каждом int хранится один байт. Итоговое число 32 байта. Из за того что я не смог нагуглить как это сделать, я даже написал свой велосипед, но он не едет. Помогите пожалуйста.
Kirill Aparin
Ребят я тут доказываю команде, что static используют только если ты хочешь сделать переменные общедоступными, в остальных случаях в классах используют final для неизменяемых переменных, что вы думаете на этот счет?
Kirill Aparin
Когда использовать static, final, const
vasilich
[
{
"type": "link",
"text": "https://youtu.be/B1fIqdqwWw8"
}
]
vasilich
По файнал и конст видос позыркай
vasilich
[
"По статику есть доки\n\n",
{
"type": "link",
"text": "https://dart.dev/guides/language/language-tour#class-variables-and-methods"
},
""
]
vasilich
А команда что говорит?)
Andrew Ka
reduce, если в функциональное программирование :)
Alex N
[
"BigInt toBigInt(Uint8List bytes) {\n BigInt read(int start, int end) {\n if (end - start <= 4) {\n int result = 0;\n for (int i = end - 1; i >= start; i--) {\n result = result * 256 + bytes[i];\n }\n return BigInt.from(result);\n }\n int mid = start + ((end - start) >> 1);\n var result =\n read(start, mid) + read(mid, end) * (",
{
"type": "link",
"text": "BigInt.one"
},
" << ((mid - start) * 8));\n return result;\n }\n\n return read(0, bytes.length);\n}\nв BigInt так переводил"
]
Alexey
[
"Спасибо. Произошло чудо когда я сюда написал. Я таки нашёл решение.\n",
{
"type": "code",
"text": "List data = [0x7F, 0xFD];\nint value = new Uint8List.fromList(data).buffer.asByteData().getInt16(0);"
},
""
]
Andrey Novatovski
чо за тупая ошибка: Unhandled Exception: Concurrent modification during iteration: Instance(length:10) of '_GrowableList'.
Andrey Novatovski
не понимаю прекола
Andrey Novatovski
пытаюсь добавить в list другой list через addAll
vasilich
[
{
"type": "link",
"text": "https://stackoverflow.com/questions/22409666/exception-concurrent-modification-during-iteration-instancelength17-of-gr"
}
]
Kuanysh
AMD процессор обновил BIOS, поставил галочки Hyper-V
Kuanysh
но не запускается android studio
Andrey Novatovski
я не понял этого
Andrey Novatovski
у меня всё норм и та же как у него
Anton Averin
[
"кто-нибудь в курсе что с AdvancedNetworkImage и чем теперь пользоваться? Репозиторий заархивирован\n",
{
"type": "link",
"text": "https://github.com/mchome/flutter_advanced_networkimage"
},
""
]
Tigran Muradyan
[
"Http request (",
{
"type": "link",
"text": "http.post"
},
"()) не работает на андроиде но работает на iPhoneе. С чем это связано?"
]
vasilich
Урл случайно не http?
vasilich
И андроид требует добавить абилку интернет в мантфест
Tigran Muradyan
как я могу добавить это в свой код?
Tigran Muradyan
url одинаковый для обеих платформ
Tigran Muradyan
Я отправляю HTTP-запрос в API, и он хорошо работает на iphone
Tigran Muradyan
но на android он выдает исключение, которое связано с неработающим запросом
AlexZ
Вопрос - что гуглить, что бы "слушать" 2+ стрима в одном, испрользуя dart:async? Суть: есть conversation, у которого есть lastMessage. Это 2 разные сущности. conversation живет в одной таблице, его lastMessage живет в другой (messages). Драйвер БД отдает поток со списком разговоров - Stream >. К нему можно применить .map/.transform, что бы для каждого Conversation найти LastMessage, используя Stream findByConversationId(String cId).
Но мне надо сделать так, что бы при изменении хотя бы одного LastMessage (второй поток в цепи), финальный поток оповещал всех обзерверов об измененях. в котлине это с flow решается на раз-два с flatMapMerge, но мне теперь надо такое же найти для dart'a, но я без понятия что искать вообще. asyncMap, addStream, StreamZip с виду не подходят
AlexZ
http (non-secure) запросы надо разрешить напрямую в коде. У тебя Http запрос?
Tigran Muradyan
да. в моем коде есть функция async, которая отправляет HTTP-запрос
Tigran Muradyan
но почему он хорошо работает на Ios?
Tigran Muradyan
также я отправляю запрос в api с https
vasilich
[
{
"type": "link",
"text": "https://stackoverflow.com/questions/51902629/how-to-allow-all-network-connection-types-http-and-https-in-android-9-pie"
}
]
Павел Стулов
Коллеги какой видекурс по flutter порекомендуете?
.
[
{
"type": "mention",
"text": "@lynda_courses"
}
]
Паша
appbrewery пустоват.. мягко говоря
Паша
скорее для тех кто программирование только в школе учил, и уже всё забыл
vasilich
Тогда как говорили классики «доки читай» ;-)
Паша
[
"мне видеокурс нужен чтобы доку ",
{
"type": "bold",
"text": "не"
},
" читать\nнеужто из-за ведущей курса все говорят что он офигенный"
]
Serg Bell
Maximilian Schwarzmuller поприятнее будет
Andrey Novatovski
кто-то понимает как при создании страницы сделать запрос с серверу с await? в InitState совать его нельзя, как быть? Отдельную страницу не хочется делать для этого действия
Паша
лучше всего использовать стейт-менеджмент нормальный
Roman Vasiliev
сделать без await
Паша
он более полный чем appbrewery если он у вас есть, и не показался вам непонятным, то его хватит имхо
Паша
[
{
"type": "link",
"text": "https://api.flutter.dev/flutter/widgets/SingleTickerProviderStateMixin/didChangeDependencies.html"
},
"\nдолжно сработать."
]
ILYOS
Есть хорошая статья про bloc? Чтоб его изучить
Andrew Ka
[
{
"type": "link",
"text": "https://youtu.be/Yu1RtaF6E2A"
}
]
Kirill Aparin
Насколько эти аргументы правдивы? Учитывая то, что static const не используются в других классах
Kirill Aparin
Аргументы в пользу static const 1) потребляет меньше памяти 2) если value известно до момента компиляции использовать const, в отличие от final который нужно использовать в том случае когда значение будет присвоено во время рантайма(правило языка) 3) если наше значение не изменится и уже известно перед компиляцией, т.е будет имутбл не поменяется ни в коем случае. примеры ниже дают понять разницу между final и const и почему стоит использовать такой подход в инциализации final FocusNode _focusNodeLogin = FocusNode(); static const _horizontalPadding = 16.0;
DVS (Read The F.ng Manual) Studio (NoHello)
"не используются в других классах" - всм?
DVS (Read The F.ng Manual) Studio (NoHello)
- делать публичными юзать везде - или делить одни и те же константные данные между всеми инстансами класса вот вам и польза
Kirill Aparin
Всмысле переменные которые обозначаются как static const в классе используются у нас только в этом классе
Kirill Aparin
Есть ли смысл использовать вместо static const - final
DVS (Read The F.ng Manual) Studio (NoHello)
если реально константа, то const. если просто неизменяемое, но вычисляемое в рантайме - final
Kirill Aparin
А если константа пишется в классе, то без static нельзя писать, что делать в этом случае
Kirill Aparin
Писать final или добавлять static
Roman Vasiliev
Смысл мешать static и final? Одно для одних вещей, второе совершенно для других
Kirill Aparin
Я вот и спрашиваю, когда что использовать
??
static, если нет явных причин его НЕ использовать.
L
одно другому не мешает у меня классы с константами почти все содержат static final или static const
admin
[
"Мужики, выручайте. Не поддается созданию функция. По массиву супергероев необходима функция findUser, которая принимает два параметра. Первый — массив с героями, второй — имя героя. Эта функция ищет по имени героя в списке и возвращает нам объект с героем, например {\"name\": \"Batman\", \"age\": 30}. Если такого имени в списке нет, функция должна вернуть {name: Anonimus, age: 0}. \n\nПример:\n\nvar hero = findUser(data, 'Iron man');\n\nprint(hero); \n\nИсходник здесь: ",
{
"type": "link",
"text": "https://gist.github.com/cripnail/c8db0cb14d491689409b3ccefbbba940"
},
""
]
Serg Bell
static - для использования класса без(!) его инициализации
Kirill Aparin
А кажется доходит
Kirill Aparin
Типо Marh.figureOutSum(x,y)
Kirill Aparin
static метод
Serg Bell
const и final - для оптимизации (производительность приложения), но первая - компилируемая (значения известны на этапе сборки аппы), а вторая - рантайма (значение прилетает на этапе работы аппы), и то и другое - не меняется после назначения
Serg Bell
уточнения работы переменных (оптимизационные)
Pavel Vasilenko
[
"class Hero{\n String name;\n int age;\n \n Hero(",
{
"type": "link",
"text": "this.name"
},
", this.age);\n \n String toString() => ('$name, $age');\n}\n\nvoid main() {\n List data = [\n Hero('batman', 18),\n Hero('grandma', 80)\n ];\n \n print(findUser(data, 'grandma'));\n\n}\n\nHero findUser(List srcList, String name) => srcList.firstWhere((hero) => hero.name.compareTo(name) == 0, orElse: () => Hero('Anonimus', 0));"
]
Andrew Ka
[
{
"type": "link",
"text": "https://youtu.be/T48vgtmwY60"
}
]
oc1 kent
Хай, кто сможет подсказать как правильно, реализовать одну штуку.. 1. есть данные с сокетов channel.stream.listen((data). 2. далее у меня парсер разбрасывает их по командам, как мне правильно создать модель для этих данных (JSON), чтобы я их мог использовать в виджетах?
Andrey Novatovski
Думаю RxDart загугли, можно билдеры поставить в виджеты и когда данные загружаются совать их в Streams и все будет обновляется
Andrey Novatovski
Ну я так делаю, хз правильно ли это, но работает !!!!!!!)))
Andrey Novatovski
Как сделать эффект прикосновения в listView при скроле ?
Serg Bell
как реклама геля для душа - "..эффект прикосновения.."
Kate
здравствуйте, может у кого то есть Flutter architecture, с использованием bloc, redux ?
Артём Ефименко
[
{
"type": "link",
"text": "https://github.com/brianegan/flutter_architecture_samples"
},
"\n\nНе уверен в актуальности"
]
Alexey
Подскажите пожалуйста как в дарте создать асинхронную таску? Если кто знает Python,то я хочу аналог asyncio.create_task(async_foo)
Alexey
Это класс. А какой метод используется для создания таски? Я в Гугле не нашел
Comrade77
[
{
"type": "link",
"text": "https://dart.dev/codelabs/async-await"
}
]
Hateful
я все же не могу понять...попробую еще раз спросить, может тут появился тот кто в курсе. Как сразу после установки(или в момент установки) разрешить звуки уведомлений для приложения?Я не нашел соответствующих пермишинов в офф.документации
Hateful
я имею ввиду вот эти разрешения:
Hateful
интересует разрешение на звук и "всплывающие уведомления"
Hateful
И я понимаю что в новых андройдах у приложений появились "категории" уведомлений и у каждой есть похожие настройки, но как включить "общие" настройки приложения на звук,вибрацию и т.п. Например тот же телеграм или вибер сразу после установки УЖЕ с этими разрешениями
admin
Можно ли как-то полностью обновить состояние в stateful виджте?
Илья Максименко
А можно как-то не полностью?
admin
Ну я имею ввиду вернуть самое первое состояние
Gorohov Valeriy
Заново init вызывать? Изнутри нельзя, Но ты можешь код сброса и инициализации вынести в отдельный метод, и вызывать его из init и любого другого места.
admin
Есть stateful виджет, который имеет в себе одну переменную как websocket. Так вот когда допустим юзер нажимает кнопку следующего собеседника, то мне не нужно закрывать websocket соединение, а лишь обновить до начального состояние.
admin
Окей, спасибо, но что, если мой init метод выглядит вот так ?
Gorohov Valeriy
А тогда что ты хочешь сбросить?
Илья Максименко
Кто-то знает как с помощью библиотеки bloc можно слушать два state одновременно? То-есть например есть условие if(state1.status==ok&&state2.status==ok) {do something}. Multilistener позволяет слушать по отдельности только, а вложенный bloclistener работает так, что во внутреннем недоступно отслеживание изменения внешнего
Maxim
подскажите как улучшить производительность в списках? сейчас на айфоне заметные подлагивания, 2 ячейки на строку, текст и картинка. картинка грузится из сети
Maxim
пробовал картинку грузить из ресурсов, на айфоне все равно подлагивает
Илья Максименко
Пока что делаю вложенным blocbuilder,поскольку если состояние внешнего меняется то он обновляет и внутренний. Во внутреннем блокбилдере доступно два стейта и можно с помощью widgetsbinding.instance.addpostframecallback что-то делать, но как я понимаю это не совсем корректное решение
Gorohov Valeriy
А как ты инициализируешь сокет?
Gorohov Valeriy
[
"Если извне в конструкторе виджета, то вот:\n",
{
"type": "link",
"text": "https://api.flutter.dev/flutter/widgets/State/didUpdateWidget.html"
},
""
]
admin
Вообще основная задача сброса, это снова показать юзеру окно загрузки, и только после того, как ему снова упадет сообщение, он должен вернуть DashChat
Илья Максименко
Если кто-то делает так же плюсаните, буду знать что не один такой
admin
Пока что это просто final переменная в stateful виджете
admin
Хорошо, сейчас попробую, спасибо большое!
????? ILyos >
[
"пост запросом мне нужно в боди передать ",
{
"type": "bold",
"text": "номер как можно сделать так?\n"
},
"в интернете поискал и установил http plugin но не смог понят его"
]
Ivan
[
"import 'package:http/http.dart' as http;\n",
{
"type": "link",
"text": "http.post"
},
"('url', body: jsonEncode(\n {\n 'phone': \"78945,\n },\n ),)"
]
Gorohov Valeriy
[
"Псевдокод, может понятнее будет. Еще в твоем кейсе будет полезен стэйтменеджер, например, bloc или stacked.\n",
{
"type": "link",
"text": "https://gist.github.com/KnightOfBlackLily/85e8b8d29a918e1ad0b1597a39321d10"
},
""
]
oc1 kent
Друзья что посоветуете для стора чтобы туда данные с сокетов гнать?
Stepan
[
"Ребят, всем привет, очень нужна помощь!\nУ меня происходит какая-то странная ошибка и я никак не могу понять, с чем это связано...\nВ общем, суть такая: в initState я вызываю функцию, которая достает объект из firebase и присваивает его. Выглядит все это так:\n\n",
{
"type": "mention",
"text": "@override"
},
"\n void initState() {\n _loadCourse();\n super.initState();\n }\n\n void _loadCourse() {\n dbHelper.getCourseById(",
{
"type": "link",
"text": "widget.id"
},
").then((course) => {\n setState(() {\n currentCourse = course;\n print(",
{
"type": "link",
"text": "currentCourse.name"
},
");\n })\n });\n }\n\nпричем, как вы могли заметить, внутри setState я проверяю, равен ли мой currentCourse null. Нет, с ним все в порядке и все его методы на месте. Но почему-то функция build считает по-другому. Она падает, говоря мне, что мой currentCourse равен null и я не могу вызывать его свойства. Вот сама build:\n\n ",
{
"type": "mention",
"text": "@override"
},
"\n Widget build(BuildContext context) {\n return Scaffold(\n body: Container(\n child: Column(children: [\n Text(",
{
"type": "link",
"text": "currentCourse.name"
},
"),\n Text(",
{
"type": "link",
"text": "currentCourse.link"
},
"),\n Text(currentCourse.platform),\n Text(currentCourse.progLang)\n ]),\n )\n );\n }\n\nТо есть я пока даже не делаю ничего особенного, просто хочу вывести на экран без наведения красоты. Если кто знает, что нужно сделать, пожалуйста, помогите, я уже всю голову сломал..."
]
Stepan
в сам виджет я передаю id и он вполне рабочий, все нормально возвращается
Илья Максименко
Ну а что вы хотите, здесь не всегда на редко встречающиеся проблемы отвечают
Илья Максименко
Лучше на стеке нормально объяснить проблему, там вероятность больше что оно не затеряется где-то
Kirill Aparin
Я хочу сделать как на первом скрине, только мне выдаёт ошибку, что Flexible и Positioned не могут быть вместе, а если убираю positioned то кнопки становятся очень компактными, как на 2 скрине
Kirill Aparin
Positioned мне нужно для анимации (AnimatedPositioned)
Kirill Aparin
[
{
"type": "link",
"text": "https://gist.github.com/kirya355/51a7dead1da51f484e7e3c4dac7df6e3"
}
]
Kirill Aparin
Без Expanded ошибка
Serg Bell
MainAxisSize.max пробовал?.
Kirill Aparin
В каком именно месте?
Kirill Aparin
В Column где Stack?
Kirill Aparin
Или Column в Stack
Serg Bell
в код не глядел, предположил, что в Row у тебя текст + свитчер
Kirill Aparin
А, там пробовал конечно
|