Содержание
- 2. ЧЕТЫРЕ ТИПА ХРАНИЛИЩА ДАННЫХ Коллекция Properties в классе Application, которая предназначена для хранения каких-то временных данных
- 3. СВОЙСТВО PROPERTIES КЛАССА APPLICATION Представляет словарь, где каждому ключу с типом string сопоставляется некоторое значение. Содержимое
- 4. СВОЙСТВО PROPERTIES КЛАССА APPLICATION При этом мы не ограничены только классом Application, в котором собственно определено
- 5. ДОБАВЛЕНИЕ ДАННЫХ В СЛОВАРЬ App.Current.Properties.Add("name", "Tom"); // или так App.Current.Properties["name"] = "Tom";
- 6. ПОЛУЧЕНИЕ ЗНАЧЕНИЯ string name = App.Current.Properties["name"];
- 7. ПОЛУЧЕНИЕ С ПРОВЕРКОЙ НА НАЛИЧИЕ object name = ""; if(App.Current.Properties.TryGetValue("name", out name)) { // выполняем действия,
- 8. УДАЛЕНИЕ App.Current.Properties.Remove("name");
- 9. ПРИМЕР ПРОЕКТА СТРАНИЦЫ MAINPAGE С ТЕКСТОВЫМ ПОЛЕМ И КНОПКОЙ xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="HelloApp.MainPage">
- 10. ДОБАВЛЕНИЕ И ИЗВЛЕЧЕНИЕ ИЗ СЛОВАРЯ PROPERTIES ВВЕДЕННОГО В ТЕКСТОВОЕ ПОЛЕ ТЕКСТА protected override void OnAppearing() {
- 11. ДОБАВЛЕНИЕ И ИЗВЛЕЧЕНИЕ ИЗ СЛОВАРЯ PROPERTIES ВВЕДЕННОГО В ТЕКСТОВОЕ ПОЛЕ ТЕКСТА private void OnClick(object sender, EventArgs
- 12. НАСТРОЙКИ ПРИЛОЖЕНИЯ Каждая система предполагает механизм настроек пользователя, которые можно сохранять для последующего использования. Например, на
- 13. ВСЕ НАСТРОЙКИ ДОСТУПНЫ ЧЕРЕЗ СВОЙСТВО PREFERENCES Методы: void Set(key, value): сохранение значения value по ключу key
- 14. ВСЕ НАСТРОЙКИ ДОСТУПНЫ ЧЕРЕЗ СВОЙСТВО PREFERENCES Методы: void Remove(key): удаляет настройку с ключом key void Clear():
- 15. ПРИМЕР СОХРАНЕНИЯ ПО КЛЮЧУ // сохраняем значение Tom по ключу name Preferences.Set("name", "Tom");
- 16. ПОЛУЧЕНИЕ СОХРАНЕННОГО ЗНАЧЕНИЯ ПО КЛЮЧУ string name = Preferences.Get("name"); // если объекта нет используем значение по
- 17. УДАЛЕНИЕ Preferences.Remove("name");
- 18. ПРИМЕР Определим на странице текстовое поле для ввода, кнопку для сохранения введенного значения в настройках и
- 19. КОД XAML xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="HelloApp.MainPage">
- 20. ПОЛУЧЕНИЕ И СОХРАНЕНИЕ ДАННЫХ В НАСТРОЙКАХ protected override void OnAppearing() { string name = Preferences.Get("name", "не
- 21. ПОЛУЧЕНИЕ И СОХРАНЕНИЕ ДАННЫХ В НАСТРОЙКАХ private void OnClick(object sender, EventArgs e) { string value =
- 22. РАБОТА С ФАЙЛАМИ Каждая мобильная платформа имеет свою специфику, свою файловую систему, свою структуру каталогов. Работа
- 23. ПРИМЕР ПРОЕКТА ДЛЯ РАБОТЫ С ФАЙЛАМИ xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="HelloApp.MainPage">
- 24. ПРИМЕР ПРОЕКТА ДЛЯ РАБОТЫ С ФАЙЛАМИ (ПРОДОЛЖЕНИЕ)
- 25. ОБРАБОТЧИКИ СОБЫТИЙ public partial class MainPage : ContentPage { string folderPath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); public MainPage() {
- 26. ОБРАБОТЧИКИ СОБЫТИЙ protected override void OnAppearing() { base.OnAppearing(); UpdateFileList(); }
- 27. ОБРАБОТЧИКИ СОБЫТИЙ // сохранение текста в файл async void Save(object sender, EventArgs args) { string filename
- 28. ОБРАБОТЧИКИ СОБЫТИЙ void FileSelect(object sender, SelectedItemChangedEventArgs args) { if (args.SelectedItem == null) return; // получаем выделенный
- 29. ОБРАБОТЧИКИ СОБЫТИЙ void Delete(object sender, EventArgs args) { // получаем имя файла string filename = (string)((MenuItem)sender).BindingContext;
- 30. ОБРАБОТЧИКИ СОБЫТИЙ // обновление списка файлов void UpdateFileList() { // получаем все файлы filesList.ItemsSource = Directory.GetFiles(folderPath).Select(f
- 31. ПОЯСНЕНИЯ константой Environment.SpecialFolder.LocalApplicationData локальную папку приложения для хранения данных string folderPath - глобальную переменную, которая хранит
- 32. ПОЯСНЕНИЯ При загрузке срабатывает метод UpdateFileList(), который загружает названия всех файлов из папки в список ListView:
- 33. ПОЯСНЕНИЯ С помощью метода Directory.GetFiles() возвращаем список всех файлов. Однако каждое название файла будет содержать полный
- 34. ПОЯСНЕНИЯ Метод Save - обработчик нажатия кнопки будет проверять наличие файла. Если файл существует, то отображается
- 35. ПОЯСНЕНИЯ Стоит учитывать, что чтобы сохранить файл именно в той папке, с который мы работаем, необходимо
- 36. ПОЯСНЕНИЯ сохранение производится с помощью метода File.WriteAllText: File.WriteAllText(Path.Combine(folderPath, filename), textEditor.Text);
- 37. ПОЯСНЕНИЯ Метод FileSelect() представляет обработчик выделения элемента в списке ListView. По выделению происходит загрузка текста в
- 38. ПОЯСНЕНИЯ метод Delete() является обработчиком нажатия на меню. То есть при сильном нажатии на элемент в
- 39. ПОЯСНЕНИЯ
- 40. ЗАМЕЧАНИЯ 1. Возможны проблемы доступа к файлам, нужны права root 2. Библиотеки меняются, нужно быть внимательным,
- 42. Скачать презентацию