SE
Здравствуйте Добавил в приложение шрифты helvetica_neue. Для каждого шрифта создал свой xml(light, regular, medium, bold). В AppTheme добавил regular.xml. Для остальных создал стили и через style применяю. Когда я пробую применить bold, light оно не применяется?
SE
SE
SE
Alexander
Ребят , нужен совет . Как вы в custom behavior, тот что у координатора , обычно коллбеки в обратку в слой вью прокидываете , если нужно на них среагировать ?
Maxim
Ну сделай опять реплейс фрагмента на новый
не особо понимаю как это сделать с фрагментами в navigation
Olya Averina
Добрый вечер Я только начала изучать многопоточность и хочу попросить совет. Я делаю конвертер валют. Запрос на сервер для получения текущего курса выполняется через JsonHttpResponseHandler и все прекрасно работает. Но после получения запроса мне нужно обработать полученное из потока значение и вывести на экран. Если делать это в функции getRateValue в мэйне, все падает, потому что запрос не успевает выполниться. Подскажите, как сделать обработку запроса правильно? На stackoverflow видела решение сделать обработку в методе onSuccess, но мне не кажется это удобным.
Olya Averina
Egor
не особо понимаю как это сделать с фрагментами в navigation
Ты используешь навигацию от гугла? Или ты про ботом навигейшн?
Egor
от гугла
Можно сделать action с твоего фрагмента в него же. И вызвать его.
Anatoliy
Си тебе не понадобится если ты связался с андроид. Лучше всего учиться на проекте - поставить себе цель что-то написать и во время этого гуглить и учиться.книги в этом вопросе очень быстро устаревают если читать не на чистом английском
Artem
Всем привет, кто нибудь делал синхронизацию? Примерно на сервере появляются новости, при первом заходе в приложение ему загружаются все данные в базу, но как получать потом только новые? Кто нибудь сталкивался с подобным вопросом или видел решение?
Roman
Всем привет, кто нибудь делал синхронизацию? Примерно на сервере появляются новости, при первом заходе в приложение ему загружаются все данные в базу, но как получать потом только новые? Кто нибудь сталкивался с подобным вопросом или видел решение?
Пока не доводилось имплементить самому,но сталкивался с таким: многие сервисы предоставляют возможность слушать сокет. Что-то вроде observer-паттерна - "подписываешься" на обновления, которые будут отправляться сервером
Eugene
Народ, всем привет! Подскажите, пожалуйста, проблема с выводом баннера admob. Когда указываю, что это тестовый девайс AdRequest adRequest = new AdRequest.Builder().addTestDevice(deviceId).build(); баннер отображается. Когда указываю: AdRequest adRequest = new AdRequest.Builder().build(); ничего нет. ключи приложения и баннера - верные. Как инициализирую admob: 1 Манифест: <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxx~xxx" /> 2 XXX extends Application: MobileAds.initialize(this, getString(R.string.admob_app_id)); 3 XXXActivity <com.google.android.gms.ads.AdView xmlns:ads= "http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" ads:adSize="BANNER" ads:adUnitId="@string/xxx_banner_id" /> and AdView mAdView = findViewById(R.id.adView); AdRequest adRequest = new AdRequest.Builder().build(); mAdView.loadAd(adRequest); Подскажите, что не так делаю?
У меня как-то было такое. Саппорт гугла сказал, что всё ок, просто нет баннеров. Со временем сами появились.
Artem
Да, я думал над вариантом с сокетами и последней датой. К примеру пользователь прошёл первую авторизацию, получает все данные и подключается к сокету, так он будет получать данные которые будут добавляться и обновляться дата последнего обновления. И если у него пропадёт интернет или он снова авторизовался, то он отправляет дату и от этой даты получает новые данные и затем подключается к сокету и опять получает актуальные данные. Это правильная логика? Может есть что улучшить? 😞
Roman
где можно об этом прочитать?
Не знаю, сам с этим еще не успел поработать) Только гуглить в лоб
George
Всем привет, подскажите плз, влияет ли железо на время сборки,проект (50+мб) 3 минуты билдится, оперативы 32, есть смысл проц ставить мощнее? или разница не сущетсвенная?
Roman
Всем привет, подскажите плз, влияет ли железо на время сборки,проект (50+мб) 3 минуты билдится, оперативы 32, есть смысл проц ставить мощнее? или разница не сущетсвенная?
У нас билд на прошлом проекте был убит кодогенерацией - использовали subcomponent в dagger. И неудачные конфигурации билд-системы проекта тоже портили - при множестве модулей не была включена параллельная сборка
Roman
параллельная сборка в студии включается в студии? прогуглил в первых строках нет очевидного ответа
Алсо можно ещё попробовать выделить больше памяти градл-демону (это уже конфиги проекта надо дергать)
George
Я в студии включал
спасибо, щас попробую
Roman
разбит, на несколько
У нас было около 35 модулей😆 Включение параллельной сборки стало манной небесной, 6 минут превратились в 2
Artem
часто будут новости появляться? ИМХО если это не реалтайм сервис со ставками или чем-то еще, то обычный pull-to-refresh проще будет в реализации. Без сокетов.
Нет, это не ставки. Данные могут появиться в любую минуту и если пользователь в сети, они 100% должны попасть к нему. Вот и обдумываю как лучше реализовать и спрашиваю у ребят с опытом)
George
Круто)
спасибо
Roman
спасибо
Пожалуйста
Artem
тогда думаю сокеты оправданы
Я слышал про firebase, он может догружать новые данные и как-то сам понимает что есть, а чего ещё нету. Но не думаю что он использует то что я написал выше)
Ярослав🇺🇦
сработало, огонь)
org.gradle.caching=true + 40% ко скорости сборки с
Egor
Ребят, привет. Есть ли смысл вообще провайдить активити? Мне просто нужно в моем холдере адаптера получить активити, а холдер создается в адаптере, а адаптер в активити. Прокидывать активити думаю вообще не варик, тем более у меня 4 холдера. Как поступить лучше?
Egor
Если тебе нужна ссылка на активити в холдере - ты что-то делаешь не так
Я разобрался уже, спасибо. Нужно было для runOnUiThread, но вопрос решен.
Vlad
как можно запретить возвращаться на предыдущую активити? пользователь залогинелся и я хочу запретить возвращаться на активити логина
Vlad
после startActivity?
Vlad
со следующей
Mike
после startActivity?
где-нибудь рядом, хоть после, хоть перед. Не со следующей
Юрий
Добрый вечер, товарищи программисты. Такой вопрос, как правильно будет сделать вот такой список. Я понимаю, что должен быть какой-то адаптер, который и будет создавать вот эти кнопки. Но подскажите, как это правильно сделать?
Azad
Либо через FlexboxLayout, либо через ChipGroup с кастомным вью
Юрий
Понял, спасибо большое!
Mike
Товарищи, а кто как собирает пэйлоады для ресайклера? Вот я сделал class Item(val a: A, val b: B) { enum class Field { a, b, } fun differences( other: Item ): Set<Field>? { val a = a != other.a val b = b != other.b return if (a || b) { val set = EnumSet.noneOf(…) if (a) set += Field.a if (b) set += Field.b set } else null } } соответственно, в байнде я делаю if (payloads.isEmpty || payloads.any { it is Collection<*> && Item.Field.a in it }) { aView.text = aValue } Есть способы сделать это менее избыточно?
Николай
Ребят, это ещё актуально создавать такую структуру папок и в них лейауты для каждого типа екранов? Или может быть существует более актуальный способ адаптации лейаутов под различные екраны?
Николай
Ivan
Ребят, а как называется элемент, где есть полоска и бегунок в ней. Этим бегунком можно выбирать значение в диапазоне
Ivan
Точно, спассибо!
Lev
Как заставить кордову не хранить сайт в себе а скачивать его?
V
Ребята, здравствуйте. Подскажите, пожалуйста, с какого ресурса следует начать изучение? Знаю java core. Стоит ли сперва в котлин? Или же сразу начать изучение Android? В идеале книгу, но их очень много и глаза разбегаются) Заранее спасибо за ответы.
Николай
Ребят. Как убрать эту обводку при старте активности? Обводка должна появляться только после того как юзер кликнет на поле ввода, а в моём случае она появляется при старте на верхнем TextInputLayout...
Николай
Paladin
Тип так?
Николай
Тип так?
типа да. советы со стек оверфлоу типа добавить android:focusableInTouchMode="true" android:focusable="true" тут не канают. Не знаю в чём причина. Может потому, что это TextInputLayout... Эту обводку получит задав атрибут boxStrokeColor
Ivansuper
И да, я надеюсь ты эти параметры вешаешь не на TextInputLayout
Ivansuper
При показе окна у тебя есть элемент в фокусе по умолчанию. В твоей разметке под руку попадает поле ввода. Тебе надо тогда сделать какую то пустышку и сделать ее фокусабельной, чтобы она на себя приняла стартовый фокус
Николай
И да, я надеюсь ты эти параметры вешаешь не на TextInputLayout
Да роли не играло куда я их вешал. Эффект был одинаков... хз, что с этой BoxStroke делать... Уже думаю убрать атрибут с файла со стилями и присобачить его всем елементам уже в onResume или onStart и посмотреть, что будет...