- Создаём текстовый редактор
- Операции с файлами
- activity_main.xml
- res/menu/menu_main.xml
- Класс MainActivity
- Сохранение настроек — Флажки
- res/values/strings.xml
- res/xml/preferences.xml
- Класс SettingsActivity
- Сохранение текстовых настроек
- Сохранение настроек — Списки
- res/values/arrays.xml
- Top 7: Лучшие бесплатные редакторы кода приложений для Android
- рекомендации
- 7. Dcoder
- 6. Редактор кода Quoda
- 5. QuickEdit
- 4. бесплатно
- 3. Наш редактор кода бесплатно
- 2. Turbo-редактор
- 1. DroidEdit Free
- Похвальные грамоты
- Codeanywhere
- просвещенный
Создаём текстовый редактор
Операции с файлами
Рассмотрим вопросы ввода/вывода, которые являются распространёнными операциями в программировании. В Android можно сохранять файлы непосредственно на самом устройстве или на внешней карте памяти. Для каждой программы на устройстве выделяется собственная папка, в которой приложение может хранить свои файлы. По умолчанию другие приложения не могут обращаться к этим файлам. Если вы сохраняете файлы на внешнем накопителе, то доступ возможен.
Android использует стандартные операции ввода/вывода, принятые в Java. Например, Android реализует файловые потоки с помощью классов из пакета java.io, а также имеет собственные классы для работы с файлами внутри приложения.
Чтобы записать данные в файл, необходимо вызвать метод Context.openFileOutput() и передать в качестве параметра имя файла. Метод возвращает стандартный Java-объект FileOutputStream. Вызов метода для данного файла из другого приложения не будет работать, обратиться вы можете только к своим файлам. Например, чтобы создать файл и записать данные, пишем следующий код:
Если имеется статический файл, который надо упаковать с вашим приложением во время компиляции проекта, можно сохранить его в каталоге res/raw/, а затем открыть его при помощи метода Resources.openRawResource(). Он возвращает объект InputStream, который можно использовать для чтения файла. После окончания работы с потоком не забудьте его закрыть, вызвав метод close().
Создадим простейший аналог Блокнота, позволяющий записывать и читать данные из файла.
На экране активности разместим компонент EditText и растянем его:
activity_main.xml
Создадим пункты меню Открыть и Сохранить в ресурсах. Строковые ресурсы добавьте самостоятельно.
res/menu/menu_main.xml
В методах openFile() и saveFile() реализуем операции по открытию и сохранению файла. Для Kotlin код получился намного короче.
Класс MainActivity
Мы получили простой блокнотик, позволяющий сохранять записи в одном заданном файле. Вы можете усовершенствовать приложение, добавив возможность создания новых файлов и их удаления.
Сохранение настроек — Флажки
Расширим функциональность блокнота, добавив в него возможность сохранения различных настроек.
Подготовим различные настройки, которые будем хранить в файле строковых ресурсов strings.xml:
res/values/strings.xml
Теперь создадим файл настроек preferences.xml (если забыли, то перечитайте статью Сохранение настроек):
res/xml/preferences.xml
Итак, мы определили первую настройку под именем pref_openmode, которая будет или сразу загружать файл в поле редактирования, если установлен флажок, или открывать пустое поле, если флажок не установлен.
Создадим новую активность, которая наследует от класса PreferenceActivity. В классе активности для предпочтений внутри метода обратного вызова onCreate() нужно только вызвать метод addPreferencesFromResource() и загрузить XML-файл preferences.xml, содержащий наши настройки (пока одну):
Класс SettingsActivity
Не забываем добавить объявление активности SettingsActivity в файл манифеста AndroidManifest.xml:
Добавим новый пункт меню Настройки в меню (файл res/menu/main.xml), чтобы открывать подготовленное окно настроек.
В методе onOptionsItemSelected() класса MainActivity добавим новый блок when/switch:
Запустите приложение и убедитесь, что в меню появился новый пункт, который открывает окно настроек.
Чтение установок предпочтений нужно проводить в методе onResume(), который вызывается системой как во время запуска приложения, так и после закрытия окна настроек и возврата главной активности на передний план:
В методе getBoolean() второй параметр false означает значение по умолчанию для возвращаемого значения предпочтения, если запрос на чтение установленного значения закончится неудачей.
Мы создали первую настройку, позволяющую сразу открывать нужный файл для редактирования, если отметить галочкой нужный пункт.
Сохранение текстовых настроек
Добавим возможность устанавливать размер шрифта для текста. Откроем снова файл preferences.xml и добавим новый элемент EditTextPreference:
В метод onResume() добавим новый код для чтения установленного значения размера шрифта:
Запустите проект и вызовите окно настроек. Теперь у нас появилась опция установки размера шрифта. Если щёлкнуть на новом пункте, то откроется диалоговое окно с текстовым полем ввода.
Обращаю ваше внимание, что в нашем примере не проверяется пользовательский ввод, что может привести к ошибкам, если вместо числового значения для размера шрифта пользователь введёт слово Кот или любое другое слово из трёх букв. Никогда не доверяйте пользователю!
Сохранение настроек — Списки
Продолжим работу с текстовым редактором и добавим в него список для выбора стиля текста. В списке будет четыре опции: Обычный, Полужирный, Курсив, Полужирный+Курсив.
Подготовим массив строк и сохраним его в файле arrays.xml, который необходимо поместить в каталог res/values/ (хотя можно просто добавить в strings.xml).
res/values/arrays.xml
В файл preferences.xml добавим дополнительный элемент ListPreference, в котором определим атрибуты заголовка окна, привязку к массиву значений и значение по умолчанию:
Для чтения настроек из списка добавляем код в метод onResume() класса MainActivity:
Запустив проект, вы теперь увидите новую настройку Стиль для шрифта, которая открывает диалоговое окно для выбора стиля из списка. Обратите внимание, что в диалоговом окне нет кнопки сохранения, только Отмена. Изменения сохраняются сразу при выборе опции списка.
В статье Сохранение настроек можно прочитать дополнительные материалы по улучшению окна настроек. Например, можно добавить новую настройку, связанную с выбором цвета для текста.
Источник
Top 7: Лучшие бесплатные редакторы кода приложений для Android
Как разработчик-энтузиаст, я пишу и читаю много кода каждый день без исключения. Однако не всегда вы можете взять свой ноутбук и работать где угодно по разным причинам. В настоящее время у всех есть смартфон, который маленький, как рука. Многие разработчики говорят, что это уже препятствие, потому что вы не можете работать с комфортом, но мы не все думаем одинаково (я имею в виду, не у всех нас огромные пальцы).
В этом топе мы поделимся с вами коллекцией из 7 лучших бесплатных приложений для редактирования кода, доступных для платформы Android.
рекомендации
Если вы хотите получать удовольствие от разработки во время работы с любым из приложений в этом топе, мы рекомендуем вам использовать соответствующую клавиатуру, например клавиатуру Хакера. Эта клавиатура доступны в магазине Play.
7. Dcoder
Dcoder — это IDE для мобильного кодирования, специально разработанная для улучшения ваших навыков кодирования на мобильных устройствах. Это полный пакет для изучения и понимания языков программирования в широком диапазоне, например от C до Ruby. Он включает в себя многофункциональный текстовый редактор, поддерживающий подсветку синтаксиса и упакованный всеми необходимыми инструментами, необходимыми, чтобы дать вам все преимущества, которые может дать IDE или компилятор кода. Процесс компиляции выполняется через облачные API, что означает, что эти функции не доступны без интернета.
Вы можете не только кодировать, но и отлаживать код, чтобы увидеть ошибки компиляции и результат на одном экране. Это более похожий порт ваших любимых редакторов кода, таких как Notepad ++ или Sublime Text с возможностью компиляции. Он также предлагает пользовательские темы, редактируемый размер шрифта для редактора и многое другое. Это приложение предлагает покупки в приложении.
6. Редактор кода Quoda
Quoda — это сложный и простой в использовании редактор исходного кода или IDE, очень похожий на Notepad ++, Textmate или Sublime Text, с интегрированной поддержкой SFTP / FTP (S) серверов и облачного хранилища (Dropbox и Google Drive). Другие функции включают загрузку исходного кода URL, завершение кода, автоматическое обнаружение кодировки, сопоставление фигурных скобок, автоматическое отступление, создание закладок, выбор цвета, форматирование HTML и многое другое — многие из них не имеют аналогов в других средах разработки Android или текстовых редакторах.
Если вы хотите кодировать продуктивно вне своего ПК, Quoda просто необходима, позволяя вам носить с собой текстовый редактор и IDE, такие как Notepad ++, Textmate или Sublime Text, в вашем кармане для кодирования, когда вы находитесь в движении.
5. QuickEdit
QuickEdit — это быстрый, стабильный и полнофункциональный текстовый редактор для устройств Android. Он был оптимизирован как для телефона, так и для планшета, он имеет высокую производительность и обратную связь в реальном времени с большими текстовыми файлами (более 10000 строк). Скорость и отзывчивость очень хорошие, если сравнивать их с другими приложениями для текстового редактора в Google Play. Его можно использовать как текстовый редактор или редактор кода для обычных текстовых файлов и программных файлов. Он автоматически обнаружит кодировку символов в ваших файлах, но вы все равно можете изменить ее по своему усмотрению.
QuickEdit позволяет получать доступ к файлам из недавно открытых или добавленных коллекций файлов, FTP, Google Drive, Dropbox и OneDrive и имеет подсветку синтаксиса для более чем 40 языков, таких как C ++, C #, Java, XML, Javascript, Markdown, PHP, Perl, Python, Ruby, Smali, Swift и т. Д. QuickEdit также имеет возможность редактировать системные файлы на корневых устройствах.
4. бесплатно
HTML-редактор anWriter помогает вам писать код: он предлагает поддержку автозаполнения для: HTML, CSS, JavaScript, LaTeX (PHP, SQL в профессиональной версии). Он поддерживает современные технологии: он предлагает поддержку автозаполнения для HTML 5, CSS 3, jQuery, Bootstrap и Angular. Он поддерживает FTP: вы можете скачать файл с FTP-сервера, отправить файл на FTP-сервер и просмотреть каталоги на FTP сервер. Он позволяет просматривать веб-страницы в приложении: позволяет быстро просмотреть веб-страницу во внутренней программе просмотра. Вам не нужно открывать браузер. Интегрированный просмотрщик имеет консоль ошибок JS.
С anWriter вы значительно увеличите скорость кодирования по сравнению с обычным блокнотом. anWriter намного легче, чем большинство IDE, но в то же время гораздо мощнее, чем большинство редакторов, подобных блокнотам.
3. Наш редактор кода бесплатно
Наш Code Editor Free — это интегрированная среда разработки (IDE), текстовый редактор, редактор кода для Android. Наш редактор кода предлагает множество функций для повышения вашей производительности во время работы. Скачивайте и редактируйте файлы из многих источников (sftp, dropbox), полезного автозаполнения и множества тем. Идеально подходит для планшетов, мобильных телефонов и других устройств Android. Никакой учетной записи или подключения к Интернету не требуется (за исключением Dropbox и SFTP), просто загрузите, установите запустить и начать кодирование! Файлы кода будут управляться локально на вашем устройстве.
Наш редактор кода поддерживает свертывание кода, проверку синтаксиса Live (для пары языков), функции вырезания, копирования и вставки, поиск и замену регулярными выражениями
Хотя это приложение с закрытым исходным кодом, оно абсолютно бесплатно и не имеет рекламы. Наш редактор кода Free был написан нашим кодом мира.
2. Turbo-редактор
Простой, мощный и открытый текстовый редактор для Android. Создан в соответствии с последними правилами Android, чтобы сделать его максимально интуитивно понятным как на телефоне, так и на планшете.
1. DroidEdit Free
DroidEdit — это редактор текста и исходного кода (аналог Notepad ++ или gedit) для планшетов и телефонов Android. Работайте везде с этим приложением, кодируйте, пока вы ждете автобус или когда вы отдыхаете на хорошем пляже (я не знаю, почему кто-то будет писать на каникулах, но что угодно). Не спешите в свой офис, если вы получили экстренный вызов с просьбой изменить какой-либо код. Просто выберите свой мобильный телефон и отредактируйте все, что вам нужно. Это приложение поддерживает Emmet Tools, автоматически расширяет простые выражения в полноценный HTML-код.
Версия с рекламной поддержкой имеет те же функции, что и платная версия, за исключением того, что она не имеет поддержки SFTP, Dropbox, пользовательских тем и корневого режима.
Похвальные грамоты
Это некоторые приложения, которые хотя и не указаны в топе, но заслуживают упоминания, поскольку они все еще потрясающие!
Codeanywhere
Codeanywhere — это редактор текста, кода и разметки, который был переработан и переработан, чтобы быть легким, быстрым и удобным для мобильных устройств. Подключитесь к своей учетной записи FTP, SFTP-серверы, Dropbox или Github и легко управляйте своими ресурсами, папками или файлами одним движением пальца. Делитесь и работайте над проектами или просто одним файлом — где бы вы ни находились, и, конечно, быстро редактируйте код с помощью нашей клавиатуры, настроенной для разработчиков на ходу. Codeanywhere также работает на рабочем столе (Mac и ПК).
Очевидно, приложение Codeanywhere не позволяет редактировать локальные файлы с вашего устройства, только из удаленных источников.
просвещенный
Enlightened — элегантный минималистичный редактор кода для Android. Его назначение аналогично другим легким редакторам кода: оно позволяет редактировать текст и код на многих языках. Думайте об этом как о неком блокноте ++ для устройств Android. В то же время его цель — оставаться минималистичным и интуитивно понятным. У него нет абсолютно никакой рекламы, навязчивых разрешений или другой чепухи. Это приложение нестабильно и имеет некоторые ошибки, однако оно имеет потенциал и его можно улучшить, поэтому стоит упомянуть об этом.
Если вы знаете другое замечательное бесплатное приложение для редактирования кода, пожалуйста, поделитесь им с сообществом в поле для комментариев.
Источник