Steve
что бы работало быстро и красиво
Сергій
нет, но слышал что трудно
Steve
память быстро кончается, разрешения разные нужны, загрузка с диска в виду отсутствия рендертреда вешает интерфейсы
Steve
и приходится без конца балансировать и подбирать
Сергій
а emoji рендерятся как и глифы(в одном пайплайне) или просто вектор?
Steve
у кого как, у эппла пнгшки
Steve
но все равно схожие проблемы
Steve
кстати рендертред все еще используется но только для риппла
Steve
так что не знаю что у них там плохо работало
Steve
я потому как увидел что анимация не останавливается когда я намертво UI тред вешаю чем-нибудь то и начал копать
Сергій
Steve
это вроде только в последних
Сергій
В седьмом или выше
Steve
если нужен перформанс в андроиде, то есть https://fblitho.com
Steve
мы для него байндинг и сделали из нейтива
Steve
На картинках как нейтив но нейтив криво все делает, а лито отлично справляется
Сергій
Steve
я тоже в шоке от лито
Steve
но он прекрасно ложится на реакт нейтив
Steve
все тоже самое
Сергій
Steve
Steve
после кучи разработки под мобилки нейтив прямо легко и приятно
Steve
если бы не тормоза и баги
Сергій
Мне нравится нативная разработка :) ещё экспериментирую с flutter
Gena
Для перформанса нужно пользоваться Core Animation и андроидные View.animate. В идеале еще воткнуть мой хак, который делает все анимации плавными плавными: https://gist.github.com/ex3ndr/4a2b4a27164c6984c12e2b2822d0b0a4
Это ко всему последующему обсуждению. Спорить не буду, поскольку нет ресурсов проверить, но когда нибудь надеюсь провести эксперимент. Но чтоб здесь в контексте было альтернативное мнение хочется написать следующее.
Я считаю, что лэйаут и анимации должны быть только в UI треде (собственно Apple и идет по этому пути). Если программист загружает UI тред чем-то тяжелым, это его личные трудности и проблемы, не надо так делать. И это большая ошибка программистов в фейсбуке, что они лэйаут выносят в отдельный тред, из-за этого они начинают "бороться" против архитектуры нижележащей системы, ничем хорошим это не заканчивается. Очень сложно становится делать те же анимации, получать и реагировать вовремя и без задержек на разные события системы (типа синхронизации тех же анимаций, safe area или как там это в андроид называется, WindowInsets и т.п). Не надо воевать с авторами оси, надо следовать их дизайну.
Konstantin
Кто-нибудь сталкивался с таким что на андроиде, после открытия клавиатуры контент поднимается вверх?
Konstantin
И скролить его нельзя
Dmitry
ну так это же авойдинг
Gena
Или настройки для Activity
Konstantin
не понял
Konstantin
что конкретно надо сделать?
Aleksei
в скроллвью обернуть
Konstantin
не помогает
Konstantin
KeyboardAvoidingView кажется ето
Konstantin
Steve
Это ко всему последующему обсуждению. Спорить не буду, поскольку нет ресурсов проверить, но когда нибудь надеюсь провести эксперимент. Но чтоб здесь в контексте было альтернативное мнение хочется написать следующее.
Я считаю, что лэйаут и анимации должны быть только в UI треде (собственно Apple и идет по этому пути). Если программист загружает UI тред чем-то тяжелым, это его личные трудности и проблемы, не надо так делать. И это большая ошибка программистов в фейсбуке, что они лэйаут выносят в отдельный тред, из-за этого они начинают "бороться" против архитектуры нижележащей системы, ничем хорошим это не заканчивается. Очень сложно становится делать те же анимации, получать и реагировать вовремя и без задержек на разные события системы (типа синхронизации тех же анимаций, safe area или как там это в андроид называется, WindowInsets и т.п). Не надо воевать с авторами оси, надо следовать их дизайну.
Это совсем другая вещь. Одно дело интерактивные анимации, а другое - транзишены. Если бы ты пытался написать телеграм то ты бы понял что UIKit без конца подвисает в рандомные моменты. Он тупо написан с расчетом на то что время есть. Это нормально, бюджет в 16мс (или даже 8?) - это очень мало что бы даже тупо порезать текст.
Konstantin
windowSoftInputMode?
Konstantin
da, spasibo
Сергій
Steve
Ну я же говорю про транзишены
Steve
Для них достаточно
Steve
Интерактивные анимации делаются в ui треде
不退転」
Пипл, подскажите плс. Эпл реджектнул аппу с причиной ниже
-Specifically, we were unable to verify a mechanism that has users agree to terms (EULA) and these terms must make it clear that there is no tolerance for objectionable content or abusive users
+ предоставил скриншот экрана регистрации.
Они хотят что бы при регистрации я вкидывал модалку где юзер принимал нашу кастомную EULA?
Пушо в аппе присутствует репорт система и profanity filter.
Gena
Pasha
и смешно и грустно
Michael
Лол
Gena
Я даже не знаю удалять или пусть повисит в качестве шутки... 🤔
Alexey
Коллеги, в scrollview есть список из схлопываемых элементов, и по нажатию последний элемент разворачивает свое содержимое за пределы экрана. Надо каким-то образом сделать так, чтобы все его содержимое оказалось в области видимости. Кто как решает подобную проблему?
Dmitry
scrollTo ?
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
https://www.npmjs.com/package/google-closure-compiler Господа, этим норм шифровать исходники, перед тем как отдать их заказчику? если нет, то чем?
Alexey
scrollTo ?
1) не очень понятно, как пробросить scrollview внутрь элемента
2) не понимаю, как вычислить позицию для промотки
Alexey
<ScrollView>
<Collapsible title='1' />
<Collapsible title='2' />
</ScrollView>
Внутри Collapsible тоже достаточно сложная структура, и где-то внутри нее есть onPress
Alexey
ок, спасибо, попробую
Dmitry
Народ, кто чем пользуется для документирования API ? Кроме swagger
Alexey
json schema
invariance
Хм, юзаю react-native-maps, и нашел странную штуку. Почему фича followsUserLocation (для позиционирования на местоположение пользователя) iOS only? На андроиде ведь тоже есть возможность локацию устройства получить, притом довольно просто...
invariance
может есть какой-то альтернативный метод?
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
D
народ после создания дебаг версии командами
react-native bundle --dev false --platform android --entry-file index.js --bundle-output ./android/app/build/intermediates/assets/debug/index.android.bundle --assets-dest ./android/app/build/intermediates/res/merged/debug
gradlew assembleDebug
apk файл это index.android.bundle?
D
который находится в ./android/app/build/intermediates/assets/debug/index.android.bundle?
Dmitry
Igor
Отличный пример страницы авторизации ))
Igor
https://raw.githubusercontent.com/cgoldsby/LoginCritter/master/assets/demo.gif
Igor
жаль, код на swift (
Ivan
берешь ширину инпута, примерную ширину буквы.. и вертишь медведя
invariance
Igor
invariance
выглядит прикольненько, но практичности мало
invariance
@all, где лучше инициализировать стейт (setState) - в componentDidMount() или в конструкторе? Стейт - местоположение, которое берется из нативной апишки андроида
Igor
不退転」