![]() |
Модераторы: javastic, AntonSaburov |
![]() ![]() ![]() |
|
javastic |
|
||||||||||||||||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1214 Регистрация: 18.3.2005 Где: St.Petersburg Репутация: 19 Всего: 27 |
Доброго времени суток!
И так, многие спрашивают как скачать изображение с определенного веб-сайта в свой мидлет и отобразить её (картинку)? Нет ничего проще. Для начала создадим мидлет в котором главным видимым элементом будет форма на которой мы и будем отображать скаченное изображение через Интернет, добавив команду для скачивания.
Мы создали обычный мидлет который просто выводит на экран форму с заголовком и комманду Get. Теперь в обработчик команды Get в методе commandAction добавим вызов класса который собственно и будет соединяться с сервером, получать изображение и выводить его на форму.
Для наглядности действий нашего мидлета мы будем выводить некоторую тектовую информацию на нашу форму. В конструктор класса GetHttp мы передаём ссылку на сам мидлет и на его форму чтобы в дальнейшем можно было из класса GetHttp обращаться к их методам. Дополнительно создадим в нашем мидлете два метода которые будут скрывать и отображать комманду Get в процессе скачивания изображения с сайта, это конечно не обязательно, но желательно, т.к. пользователь не сможет выбрать ещё раз команду Get пока предедущая не отработала. Вставьте эти два метода в любое место мидлета.
Теперь приступим к созданию класса GetHttp. Этот класс должен использовать интерфейс Runnable для того чтобы работа нашего мидлета и потоки данных работающих с Интернет соединениями не мешали друг другу.
В конструторе мы установим предварительные настройки и создадим новый поток, из мидлета мы запустим этот поток вызвав метод start() (конечно это можно было сделать и в самом конструкторе, но лучше пускай конструтор выполняет свою предназначенную работу - инициализация). Теперь в метод run() мы добавим код который будет скачивать информер с сайта www.gizmeteo.ru на котором будет отображаться погода города Санкт-Петербурга ;).
Небольшой сценарий этого кода таков: После выбора команды Get мы не отображаем на время работы кода эту команду чтобы пользователь повторно не нажал, затем через
Кто-то спросит почему я читаю байты в цикле? Я отвечу. Писал эту статью быстро, телефон который был под рукой не мог сходу прочитать всё изображение через конструкцию
Данная статья написана для программистов начального уровня разработки в j2me. Рабочий мидлет, а так же исходники доступны ниже. Enjoy! ![]() http://forum.vingrad.ru/index.php?act=modu...&attachid=1 JAD http://forum.vingrad.ru/index.php?act=modu...&attachid=2 JAR http://forum.vingrad.ru/index.php?act=modu...&attachid=3 SOURCES Автор: javastic Это сообщение отредактировал(а) javastic - 15.8.2007, 10:21 -------------------- 01101010 01100001 01110110 01100001 01110011 01110100 01101001 01100011 scjp, mcp |
||||||||||||||||||||
|
|||||||||||||||||||||
![]() ![]() ![]() |
FAQ раздела лежит здесь! |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |