Как да направите слайд шоу на J2ME?
Какво е MIDlet?
Тъй като Java 2 Micro Edition поддържа голям брой устройства, има различни конфигурации на платформата. Без да навлизаме в подробности, ние ще използваме CDLC конфигурация (Connected Limited Device Configuration), разширен профил, който MIDP (Mobile Информация за устройството профил), която осигурява необходимата функционалност за програмиране на мобилен телефон.
MIDlet - това е приложение, което използва Java MIDP профила и конфигурацията CLDC.
Това ще доведе до един прозорец за въвеждане на информация, която ще бъде използвана за създаване на файла на манифеста и .jad файл, не може да се определи нещо и просто натиснете OK.
А сега нека видим папката, където сте инсталирали Wireless Toolkit, имаше една папка на нашия проект Слайдшоу директория приложения. Тя автоматично създава няколко папки, помислете за целите на някои от тях:
Бин - Искова файлове: Буркан файл, .jad файл, MANIFEST.MF
ВЕИ - Приложенията на файлове с ресурси, като графични файлове, .png
SRC - оригиналните файлове на приложения
Как е MIDlet?
Сега е ред на действителната програмен код. Всички трябва да се допълват MIDlets javax.microedition.midlet.MIDlet клас, това е да го има като база. (Тези, които не са запознати с обектно-ориентирани езици, на този етап, може да чете допълнителна литература, тъй като съответната терминология ще бъдат използвани по-късно). Това се прави по следния начин:
внос javax.microedition.midlet.MIDlet;
обществени клас Слайдшоу простира MIDlet
.
>;
MIDlet е абстрактен клас, така че е необходимо да се пренапише няколко метода: startApp (), pauseApp () и destroyApp (), който предписва действия в зависимост от промяната на сегашното състояние на MIDlet (ако самото начало, да спре, или да прекрати, съответно).
Възможно е да има извънредна ситуация, ако, например, името на файла е неправилна или даден файл не е снимка. Трябва да се помни, че се изисква лечение на извънредни ситуации в Java, използвайки блок пробвам улов, в противен случай заявлението просто няма да се съберат.
На следващо място, ние се нуждаем от формата на обекта. Форма - е инстанция на Формуляра за клас, който съдържа всички обекти показани на екрана. Обектите се добавят към формата от добави метод (...), и изтрити от изтриване (междинно itemNum). Като се има предвид изложеното по-горе, можем да запишем функцията за създаване на снимка и да я добавите в следния вид:
внос javax.microedition.lcdui.Image;
внос javax.microedition.lcdui.Form;
внос java.io.IOException;
обществени невалидни setImage (String път)
опитайте изображение = Image.createImage (път);
>
улова (IOException МОР) System.out.println (ioe.getMessage ());
>
form.append (изображение);
>
Последната и основният обект в йерархията - е пример за дисплей, който е физически дисплея на екрана на мобилен телефон. Вземи препратка към обекта на дисплея, можете да използвате метод getDisplay и да направи формата на текущия изглед обекта - използване setCurrent метод. По този начин, нашата функция startApp () ще бъде, както следва:
обществени невалидни startApp () дисплей = Display.getDisplay (това);
образуват = нова форма ( "Слайдшоу");
setImage ( "/ SlideShow.png");
display.setCurrent (форма);
>
Остава да добавим в класа на SlideShow членовете на групата показват, форма, образ, както и програма, която показва SlideShow.png изображението на екрана е готова.
внос javax.microedition.lcdui.Command;
.
Следващата = нова Command ( "Напред", Command.SCREEN, 1);
обратно = нова Command ( "Назад", Command.SCREEN, 1);
form.addCommand (следващ);
form.addCommand (обратно);
Сега слушайте за изпълнение на класа и изпълнение на команди:
внос javax.microedition.lcdui.CommandListener;
внос javax.microedition.lcdui.Displayable;
частен клас MyCommandListener изпълнява CommandListener обществени невалидни commandAction (Command С, показвано г) ако (в == следващия).
>
ако (C == обратно).
>
>
нов клас обекти, свързани с формата на обекта се използва метод setCommandListener (...), добавете създаването на съоръжението за преработка команда в startApp () функция:
CL = нов MyCommandListener ();
form.setCommandListener (CL);
Как да се покаже много снимки?
По това цялата подготвителна работа е завършена, сега ние имаме всички необходими съоръжения, и ние сме като тухли, съставя програмата си. Ние казваме, че изображението, което искаме да покажем като: 1.png, 2.png, ..., в същото време да добавите член Слайдшоу два класа: INT slideNum и INT maxSlideNum, който ще съдържа текущия брой на картината, а общият брой на изображенията, съответно.
Метод за обработка на команди е да добавите логика да промените изображенията на екрана, когато натиснете клавишите. В края на нашата програма е резултат изцяло ще бъде, както следва:
обществени клас Слайдшоу простира MIDlet дисплей лично дисплей;
частна форма Форма;
частен Command следващия;
частен Command обратно;
частен образ на изображението;
частни MyCommandListener CI;
частен Int slideNum = 1;
частен Int maxSlideNum = 6;
обществени невалидни destroyApp (булев унищожат) форма = нула;
notifyDestroyed ();
>
обществени невалидни pauseApp () <>
обществени невалидни startApp () ...
>
обществени невалидни setImage (String път).
>
частен клас MyCommandListener изпълнява CommandListener <
обществени невалидни commandAction (Command С, показвано г) ако (в == следващия slideNum
form.delete (0);
setImage ( "/" + Integer.toString (slideNum) + "PNG.");
>
>
>;
Как да стартирате програмата?
Това е всичко, е необходимо да се състави програма, която използва Build опция в KToolbar. Когато Build съобщение Неуспешен внимателно, за да се види дали не сте пропуснали нещо. След като програмата е успешно компилиран, можете да стартирате и да го видим в действие в един от най-емулатори, включени в Wireless Toolkit, като използвате опцията Run.
С това завършва урока. Свържете въображението си с техническите възможности на мобилен телефон и ще се радваме!
Евгений Boutkevitch (известен още като Voolkan)
Свързани статии