• Почему сбрасывает выделенное состояние ListPreference?

    KuSu
    @KuSu
    Android разработчик

    android:entries="@array/font_style_list_description"
    android:entryValues="@array/font_style_list_description"


    В первое ты вставляешь строки которые зависят от языка и отображаются пользователям, а во второе - то, что будет едино для всех языков. Иначе при переключении на русский оно ищет, например, значение "normal" среди entryValues, не находит и выбирает первое
    Ответ написан
    3 комментария
  • Miui и пр. системы основанные от android'а подходят для android разработки?

    @Slavon93
    Ну, во-первых, следует понимать, что MIUI - это тоже Android, просто со своими нюансами. Поэтому, в плане того, подходит оно или нет - да, подходит, но с некоторыми оговорками.

    Первая оговорка заключается в том, что версия MIUI и версия Android, лежащая в ее основе живут параллельными жизнями. Это приводит к тому, что одна и та же MIUI 9.6 на Xiaomi Redmi Note 3 Pro имеет версию 6.0, а на Redmi Note 4 - 7.0. А на более новых телефонах может быть и 8.0. Так что проверки на версию API Android обязательны.
    Второй нюанс заключается в том, что дизайн приложений для MIUI немного отличается от такового, принятого в чистом Android, так что проверять в любом случае придется где-то еще, а не только на Xiaomi.
    Третий нюанс заключается в том, что у Xiaomi есть своя собственная система разрешений, оптимизаций энергопотребления и так далее, поэтому то, что нормально будет работать на обычном телефоне с чистым Android, может работать немного неожиданным образом на Xiaomi, особенно это касается всяких фоновых сервисов, которые запросто могут быть убиты, просто потому что система посчитает, что они тратят энергию, а пользователь не внес приложение в исключения. Аналогичная штука может происходить с Push уведомлениями.

    Таким образом, да, тестировать приложение можно и на Xiaomi, можно и основную разработку на них вести, но лучше параллельно проверять работу и на чем-то еще.
    Ответ написан
    Комментировать
  • Как поменять цвет меню в ToolBar?

    @zeekenru
    <style name="MyTheme" parent="Theme.AppCompat.Light.NoActionBar">
        ...
        <item name="actionOverflowButtonStyle">@style/MyOverflowButtonStyle</item>
    </style>
    
    <style name="MyOverflowButtonStyle" parent="Widget.AppCompat.ActionButton.Overflow">
        <item name="android:tint">Твой цвет</item>
    </style>
    Ответ написан
    Комментировать
  • Черным по белому или белым по черному?

    taliban
    @taliban
    php программист
    Неважно, просто чаще смотрите мимо монитора. Желательно в окно и далеко.
    Ответ написан
    Комментировать
  • Удаляет не все элементы из TODO List приложения на андроид?

    KuSu
    @KuSu
    Android разработчик
    public void removeSelected () {
            for (int i = 0; i < listCheckBoxChecked.size(); i++) {
                if (listCheckBoxChecked.get(i)) {
                    listTasks.remove(i);
                    listDate.remove(i);
                    listCheckBoxChecked.remove(i);
                }
            }
            notifyDataSetChanged();
        }

    Вот мне в упор не нравится этот метод. Смотри, у тебя список 1 2 3. Ты удаляешь элемент по индексу [0], получаешь список 23. Следующим ты удаляешь элемент по индексу [1] - получаешь список из числа 2. Теперь i = 2, size =1 -> выход из цикла
    Ответ написан
    1 комментарий
  • Удаляет не все элементы из TODO List приложения на андроид?

    zagayevskiy
    @zagayevskiy Куратор тега Java
    Android developer at Yandex
    for (int i = 0; i < listCheckBoxChecked.size(); i++) {
                if (listCheckBoxChecked.get(i)) {
                    listTasks.remove(i);
                    listDate.remove(i);
                    listCheckBoxChecked.remove(i);
                }
            }

    Здесь ошибка. Удалять всегда нужно с конца. Иначе ты пропускаешь элементы.
    Ответ написан
    Комментировать
  • Как правильно разбить диски при установке linux ubuntu 16.04 как полноценную ос?

    SagePtr
    @SagePtr
    Еда - это святое
    На SSD смонтировать /, на HDD смонтировать /home, к примеру

    Либо /home тоже на SSD сделать (не монтировать отдельно), а на HDD создать один раздел и подключить его под файлопомойку (вне /home)
    Ответ написан
    4 комментария
  • Как продолжить выполнение остановленного AsycnTask в Android?

    zagayevskiy
    @zagayevskiy Куратор тега Java
    Android developer at Yandex
    Нельзя использовать асинктаски таким способом.
    1) Отмененную таску нельзя возобновить
    2) Они по-умолчанию выполняются последовательно, поэтому, даже если получится сделать подобный трюк, это застопорит остальные таски в приложении
    3) У тебя утечка памяти.Утекает активити, просунутая в таску. Делать так не рекомендуется.

    Возьми лучше реальный пример, и не майся дурью. Никто не использует асинктаски для заугрузок, которые можно поставить на паузу(т.е. достаточно долгих). Для этого существуют совсем другие апи.
    Ответ написан
    1 комментарий
  • Как сделать ссылку в андроид приложении?

    @meandnano
    Добавьте в обработчик нажатия на вашу кнопку старт активити со специальным интентом, содержащим вашу ссылку. Вот так:
    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.mylink.com"));
    startActivity(browserIntent);
    
    Ответ написан
    Комментировать