Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Бип из системно... 65535
Пример работы с... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
21 ошибка прогр... 65535
Гостевая книга ... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Содержание сайт... 65535
Invision Power ... 65535
Имитационное мо... 65535
Программируемая... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 3
На сайте нет зарегистрированных пользователей

Пользователей: 13,182
новичок: Nikita123241
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Выбор наилучших альтернатив с использованием методов оптимизации на Delp...
Моделирование работы перекрёстка по регулированию движения на GPSS + Поя...
Метод половинного деления для нахождения корня уровнения на Turbo Pascal...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Интерфейс модели виджета
Начнем обсуждение с интерфейса, который служит контрактом для модели виджета, чтобы эта модель могла объявлять поля для сохранения в базе данных. Этот контракт также определяет то, как устанавливать поле, когда оно извлекается из базы данных.
Вдобавок интерфейс предоставляет метод обратного вызова init, который вызывается при первоначальном извлечении модели из базы данных и перед передачей ее запросившему клиенту.
Интерфейс спроектирован таким образом, Начнем обсуждение с интерфейса, который служит контрактом для модели виджета, чтобы эта модель могла объявлять поля для сохранения в базе данных. Этот контракт также определяет то, как устанавливать поле, когда оно извлекается из базы данных. что производный абстрактный класс предоставит реализацию с использованием специфического постоянного хранилища, полагаясь на этот контракт для Java-класса уровня листа. Затем Java-класс уровня листа должен будет реализовать этот контракт для предоставления того, что необходимо сохранять и извлекать.
В качестве постоянного хранилища будет использоваться средство разделяемых настроек Android. Как следует из имени этого интерфейса, это просто контракт на сохранение данных. Клиенты вроде BDayWidgetModel просто полагаются на специфические методы класса, наиболее часто наследуемого от этого интерфейса.
Реализация этого интерфейса должна будет предоставить имя файла настроек в ответ на вызов метода getPrefname . Этот файл настроек затем применяется для сохранения пар “ключ/значение”, полученных от getPref sToSave . В обратной операции (setValueForPref) у производного класса запрашивается установка внутреннего значения по заданному ключу и значению, извлеченному из хранилища настроек.
Наконец, метод init вызывается на производном классе для отражения того факта, что значения были восстановлены из постоянного хранилища или произошла какая-то другая возможная инициализация.
На заметку! Помните, что в реальном приложении это наследование будет структурироваться несколько иначе; скорее всего, вместо наследования будет применяться механизм делегирования для повторного использования. Однако эта иерархия наследования хорошо работает в рассматриваемом тестовом случае для демонстрации моделей виджето.
Теперь давайте рассмотрим абстрактную реализацию, которая сохраняет поля данных виджета как разделяемые настройки.
Опубликовал Kest Февраль 14 2015 16:59:39 · 0 Комментариев · 1396 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Карта сайта
Animated Menus
С# для профессион...
Определние размер...
Игра змейка
База предприятий ...
PCX
Пишем программы и...
Учебник по создан...
Trojan [Исходник ...
ShadelLabel
Мониторинг сервер...
Delphi 2005 Учимс...
Apollovcl61
Панель для реклам...
DelphiX
Популярные загрузки
Простой пример ка...
FatScrollbar
Visual Basic Script

Топ загрузок
Приложение Клие... 100728
Delphi 7 Enterp... 96708
Converter AMR<-... 20218
GPSS World Stud... 16913
Borland C++Buil... 14106
Borland Delphi ... 9965
Turbo Pascal fo... 7307
Калькулятор [Ис... 5806
Visual Studio 2... 5175
FreeSMS v1.3.1 3645
Случайные статьи
Получить цвет пикс...
Работа со списком ...
Будущее хавбека Ми...
10 Заблуждений при...
О поколениях интел...
Помимо вызова акти...
Процедуры и функци...
Основные объекты W...
Direct Sequence Sp...
Распространение по...
1xStavka букмекерс...
Случайные объекты
Как сделать так, ч...
Нетиповые операции...
Приведем упрощенны...
Где купить сила им...
Расширение сети
Применение нового ...
Project
Приемы, которые тр...
Оптимизация кода
• внутренний бранд...
УПРАВЛЕНИЕ ВЫПОЛНЕ...
Дублирование строк...
Разработка плана б...
Статистика



Друзья сайта
Программы, игры
Error: Incorrect password!
Error: Incorrect password!


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?