
Amir
03.05.2018
04:24:11

Игори Пак
03.05.2018
04:31:24


Dima
03.05.2018
04:39:41
А как правильно реализовать запись при первом запуске, изменении настроек, и сбросе на первоначальные настройки?
Если использовать стандартные системные виджеты для настроек, то вся их конфигурация делается через strings.xml. Вы там создаёте строки которые используются как ключь в SP, и строки, которые хранят значение по умолчанию.
Дальше, если мы хотим, чтобы в SP сразу записались значения по умолчанию, то при старте приложения вызывается это:
PreferenceManager.setDefaultValues(this, R.xml.preference, false);
И, вероятно, этим же методом можно сбросить в значения по умолчанию.
Но у меня лично свой небольшой велосипед вокруг SP и всё работает несколько иначе.
Спасибо за ответ,
Как вариант через ussd, но просто как реализовать это?
Я такого не делал, но вот Гугл выдаёт первым результатом реализацию получения USSD ответов. Вероятно, для этого ваше приложение должно будет запрашивать у пользователей всякие страшные разрешения на доступ к звонкам и СМС: https://stackoverflow.com/questions/22057625/prevent-ussd-dialog-and-read-ussd-response

Google

Dmitry
03.05.2018
04:41:35

Игори Пак
03.05.2018
04:43:43


Amir
03.05.2018
04:45:39
Если использовать стандартные системные виджеты для настроек, то вся их конфигурация делается через strings.xml. Вы там создаёте строки которые используются как ключь в SP, и строки, которые хранят значение по умолчанию.
Дальше, если мы хотим, чтобы в SP сразу записались значения по умолчанию, то при старте приложения вызывается это:
PreferenceManager.setDefaultValues(this, R.xml.preference, false);
И, вероятно, этим же методом можно сбросить в значения по умолчанию.
Но у меня лично свой небольшой велосипед вокруг SP и всё работает несколько иначе.
Понятно, спасибо. Теперь как мне объяснить это руководителю, который живет в базах, что я собираюсь использовать настройки через xml файлы?


Dima
03.05.2018
04:50:07
Понятно, спасибо. Теперь как мне объяснить это руководителю, который живет в базах, что я собираюсь использовать настройки через xml файлы?
Хмм.. Ну, можно сказать, что вот так устроен Андроид и это официальный способ работы с настройками в нём, и что если его не использовать, то усложняется возможность использования системных виджетов для управления этими настройками, теряется возможность бекапить эти настройки в облако. Впрочем, если копировать их из базы в SP руками, то не теряется, но непонятно, зачем это делать, если можно сразу записать их в strings.xml.
Но так-то можно где угодно их хранить, и в базе тоже, если вот хочется так.


Amir
03.05.2018
04:53:12
Хмм.. Ну, можно сказать, что вот так устроен Андроид и это официальный способ работы с настройками в нём, и что если его не использовать, то усложняется возможность использования системных виджетов для управления этими настройками, теряется возможность бекапить эти настройки в облако. Впрочем, если копировать их из базы в SP руками, то не теряется, но непонятно, зачем это делать, если можно сразу записать их в strings.xml.
Но так-то можно где угодно их хранить, и в базе тоже, если вот хочется так.
Спасибо за ответ, пойду топить за Android)


Vladimir
03.05.2018
05:16:26
Нарооод!!! Целиком задача такова: мне нужно, чтобы на экране над клавиатурой всегда была видна нижние вьюхи в моём фрагменте; для этого я всё запихал в скроллвью и хочу под самым нижним видимым элементом добавлять имиджвью с фоновым цветом и прокручивать скроллвью до упора вверх, но размер этого имиджвью зависит от линейных размеров экрана и высоты некоторых вышерасположенных вьюх - вот их высоту и хотелось бы откуда-нить добыть.
Добыть не получается, тк как их высоты заданы через wrap_content

Aleksandr
03.05.2018
06:02:53

Vladimir
03.05.2018
06:05:05
у тебя full screen ?
нет, вроде бы.
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="true" />
или где это смотреть?

Artem
03.05.2018
06:05:41
Тебе надо размеры после отрисовки получить?

Aleksandr
03.05.2018
06:05:48

Vladimir
03.05.2018
06:05:48
вот ещё что в манифесте: <uses-feature android:name="android.hardware.screen.landscape" />
на полный экран - это без верхних значков всяких разных? тогда не фулл

Google

Aleksandr
03.05.2018
06:07:56
просто в манифесте добавь android:windowSoftInputMode="stateAlwaysVisible|adjustResize"
ну или не stateAlwaysVisible
главное оставь adjustResize
это позволить скролить твой скроллвью

Vladimir
03.05.2018
06:10:57

Aleksandr
03.05.2018
06:11:16
https://developer.android.com/guide/topics/manifest/activity-element

Vladimir
03.05.2018
06:19:41
для активити
Точно тоже самое, что у меня было без этой строчки и дополнительного имеджвью - самый нижний элемент скрывается клавиатурой, поскольку ввод производится чуть выше - и фокус, соответственно не на самом нижнем элементе

Aleksandr
03.05.2018
06:21:17

Vladimir
03.05.2018
06:21:33
да

Aleksandr
03.05.2018
06:22:04
да
значит ты можешь программно скроллить скроллвью до нужного положения.
нужно поймать событие открытия soft keyboard и проскроллить

Vladimir
03.05.2018
06:24:02
вобщем я склоняюсь к мысли такой, задать для рвзных высот экранов разный коэффициент вычисления высоты этого имиджвью:
public void showFreeSpace(final ViewGroup.LayoutParams params) {
params.height = getmDisplySize().y * 6/10;
getViewState().showFreeSpace(params);
}

Aleksandr
03.05.2018
06:25:47

Vladimir
03.05.2018
06:27:18
думаю подобрать ещё для 4-х вариантов коэффициент

Aleksandr
03.05.2018
06:28:08

Vladimir
03.05.2018
06:29:06

Павел
03.05.2018
06:29:18
у кого была такая ошибка:
Program type already present: com.google.android.gms.internal.measurement.zzabn
Message{kind=ERROR, text=Program type already present: com.google.android.gms.internal.measurement.zzabn, sources=[Unknown source file], tool name=Optional.of(D8)}

Роман
03.05.2018
06:29:45
О у меня часто zz
Вроде google maps
Связана была

Google

Роман
03.05.2018
06:30:04
Пакетом
Location

Павел
03.05.2018
06:30:24
пробую откатиться на 11,8,0 gms

voffka
03.05.2018
06:33:18

Aleksandr
03.05.2018
06:34:51

Vladimir
03.05.2018
06:36:15
Хочу продублировать на андроиде вот такой айфоновский интерфейс

Aleksandr
03.05.2018
06:39:38
а в чем сложность?

Alm
03.05.2018
06:44:15
Типа в материал дизайне надо, наверное

Павел
03.05.2018
06:45:01

Роман
03.05.2018
06:47:33
Закоментил??

Павел
03.05.2018
06:52:54

Vladimir
03.05.2018
06:55:06

Роман
03.05.2018
06:55:22
Все что с этим было связано
Там location

Павел
03.05.2018
06:57:19
ну у меня
Caused by: com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
и пути до .jar,я эту папку чистил

Aleksandr
03.05.2018
07:05:33
Парни, сорри что не в тему, посоветуйте хорошее платное прокси

Vadim
03.05.2018
07:11:23
тут тебе надо с фокусами играться и смотреть что если Дом в фокусе - прятать Город
и так далее
а когда все заполнил или нажимаешь на кнопку Найти - показать все

Google

Aleksandr
03.05.2018
07:12:11
какой размер должен быть у imageview?

Vladimir
03.05.2018
07:16:10
пытался вычислить путем вычитания из высоты экрана суммы высот нижних элементов, но эти-то высоты получить и не получается

Aleksandr
03.05.2018
07:18:26

Vladimir
03.05.2018
07:20:07

Alexandr
03.05.2018
07:23:06
Романтик. Телеграмма!
Чем сейчас живет турклуб? Новости, объявления и мероприятия туристского клуба в телеграме. Отправить телеграмму в канал: @isgeo
https://t.me/tk_romantik

Aleksandr
03.05.2018
07:24:01

Vladimir
03.05.2018
07:24:47
как сейчас, но у меня почему-то как будто полная перерисовка экрана происходит

Aleksandr
03.05.2018
07:26:48

Vladimir
03.05.2018
07:30:43
в списке используется rv?
Да. Здесь шаблон разметки лежит: https://gist.github.com/btow/7e9e89bf5d4f7fcd0a36c6c1a5b64674#file-frag1_1-xml

Aleksandr
03.05.2018
07:33:11

Vladimir
03.05.2018
07:34:09

Aleksandr
03.05.2018
07:34:43
ну,т.е. не сверху вниз идут элементы а наоборот, снизу вверх

Константин
03.05.2018
07:36:15
я бы поля в RV сделал
либо тут на каждый филд вотчер ставить,но это больно
ну а UISegmentedControl такой можно радибатонами сделать

Vladimir
03.05.2018
07:37:20

Google

Aleksandr
03.05.2018
07:38:41

Vladimir
03.05.2018
07:42:11
партизан, блин. зачем разная высота? чтобы что?
:) чтобы при программном скролле скролвью вытеснить вверх все элементы кроме кнопки и двух нижних полей из адреса. Если имиджвью большая, то она вытесняет больше чем нужно, если маленнькая - то, соответственно - меньше, и тогда между клавиатурой и полем ввода получается мало вариантов подстановки элементов адреса
на видео, в прынципе, оптимально, но это для конкретного экрана, а они разные бывают
кроме того, такое очучение, что экран полностью перерисовывается и нет такого эффекта, что плавно происходит вытеснение верхнего поля за верхнюю границу видимости

Aleksandr
03.05.2018
07:45:00

Vladimir
03.05.2018
07:47:21

Aleksandr
03.05.2018
07:56:20

Vladimir
03.05.2018
07:57:31

Сергей
03.05.2018
07:59:50
Ребят, подскажите, пожалуйста, когда при переходе на экран профайлер показывает повышение потребления памяти на 30 мегабайт и при возвращении обратно потребление памяти не уменьшается. Соответственно, если повторить действие 5 раз - будет увеличено потребление на 150. Это говорить о серьезной утечки памяти или просто андроид не торопится запускать сборщик мусора?

Aleksandr
03.05.2018
08:00:31

Vadim
03.05.2018
08:02:37
Может кто то обьяснить в чём прикол инициализирвоать переменную с типом(Interface)?

Сергей
03.05.2018
08:02:46
канарейка ругается?
Кстати, недавно вот ее поставил в application прописал, но ни одного слова от нее не было, даже непонятно работает или нет)
Может можно как-то точно это проверить?

Dmitriy
03.05.2018
08:03:17

Сергей
03.05.2018
08:04:03
Если зайти в активность, передать контекст в статик поле и выйти из активности, канарейка ругнется?))