Вызов диалога выбора файла и загрузка содержимого в kotlin

Пишу небольшое приложение в Android Studio, как и многие столкнулся с типовой задачей — диалог выбора файла и его загрузка.

Ясно, что устройство уже имеет какой то файловый менеджер, и писать свой диалог — хоть и интересно, но является и тратой времени, а в будущем еще и доп. компонентом, требующим поддержки.

Используем Activity Result APIs для вызова существующего файл менеджера, и допустим, что в нашем activity (MainActivity) есть какая то кнопка запускающая этот диалог.

Тогда код может выглядеть следующим образом:

В начале вы создаёте и регистрируете т.н. контракт, а при нажатии кнопки вызываете его с нужным intent фильтром.

В обработчике результата я открываю поток на чтение, используя переданный URI. Всё содержимое файла я читаю в переменную content.

Мало букафф? Читайте есчо !

Как изменить цвет фона приложения

Январь 14, 2025 г.

Когда вы проектируете макет активити в android studio вы можете у корневого контейнера задать цвет фона выбрав соответствующее значение атрибута android:background. Как в примере ниже - черный фон [crayon-68caffdc6321e532537165/] Это будет ...

Читать

Как в Kotlin отключить upper case у компонента Button

Март 20, 2023 г.

Компонент Button использует material дизайн и имеет некоторые предопределенные стили, которые иногда хочется изменить. Мне чаще всего требуется убрать UPPERCASE с текста кнопки. На старте шаблон компонента выглядит вот так: [crayon-68caffdc63436914254464/] ...

Читать

Как получить строку из R.string по имени

Ноябрь 30, 2022 г.

В общем случае, когда вы находитесь в контексте Activity, это выглядит так: [crayon-68caffdc63647013401077/] При этом вызов getResources() в этом контексте и необязателен, т.е. работает и так: [crayon-68caffdc63652489402828/] Если вы находитесь ...

Читать

Анимированный градиент в ActionBar

Октябрь 23, 2022 г.

Расскажу как создать фон для actionbar с анимацией градиента цвета. Нам понадобится Android Studio и Kotlin. Для начала добавим drawable ресурс в наш проект. Откроем в проекте вкладку res/drawable и выберем из меню File -> New -> Drawable ...

Читать
 

Комментарии к «Вызов диалога выбора файла и загрузка содержимого в kotlin»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: