-->

Платформа J2Me

На нашем литературном портале можно бесплатно читать книгу Платформа J2Me, Автор неизвестен-- . Жанр: Программирование. Онлайн библиотека дает возможность прочитать весь текст и даже без регистрации и СМС подтверждения на нашем литературном портале bazaknig.info.
Платформа J2Me
Название: Платформа J2Me
Дата добавления: 15 январь 2020
Количество просмотров: 347
Читать онлайн

Платформа J2Me читать книгу онлайн

Платформа J2Me - читать бесплатно онлайн , автор Автор неизвестен

Эта книга научит вас, как разрабатывать программное обеспечение для платформы J2ME компании «Sun Microsystems». Эта книга придерживается стиля учебного пособия, это не справочное руководство.

Цель — дать вам твердую основу в понятиях и техниках, которая даст вам возможность решиться на самостоятельную разработку качественных приложений.

Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала

1 ... 65 66 67 68 69 70 71 72 73 ... 86 ВПЕРЕД
Перейти на страницу:

Конструктор No-arg.

*/

public I18NDemoResources_ru_RU()

super();

}

public Object [][] getContents()

}

return contents;

}

// Необходим статический инициализатор для инициализации

// переменной, которая не может быть инициализирована

// в массиве содержимого. Например, мы не можем выделить

// что-либо в массиве содержимого для создания изображения и

// выполнить требуемую обработку исключений.

static

{

try

{

applcon = Image.createlmage("i!8n-ru_RU.png");

}

catch (lOExce'ption ioe)

{

System.out.print In(ioe.getMessage());

ioe.printStackTrace();

}

}

}

Если вы все еще не убеждены, взгляните на листинг 9.13, который показывает ресурсы того же самого приложения, локализованные на японский язык. Класс I18NdemoResources_ja JP был создан с помощью того же текстового редактора, основанного на ASCII. Японские символы не могут быть введены в традиционном текстовом редакторе без поддержки IME. И, если вы используете IME, вы должны убедиться, что используете уникод для записи строковых литералов в файл. В противном случае вашему приложению придется выполнять преобразование посимвольной кодировки.

Листинг 9.13. Последовательности переключения уникода работают со всеми элементами всех письменных языков мира, включая восгочноазиатские языки, такие, как японский

import javax.microedition.Icdui.Image;

import Java.io.lOException;

/**

Данный класс определяет локализованные ресурсы для приложения I18NDemo3.

Вы извлекаете ресурс, вызывая метод getObject() в классе ResourceBundle.

*/

public class I18NDemoResources_ja_JP

extends ListResourceBundle

{

// Содержит один из локализованных ресурсов. Нам необходимо

// инициализировать эту переменную в статическом инициализаторе

// данного класса.

private static Image applcon;

private Object [][] contents =

{

// "Привет, мир"

{"title", "u24f64u3055u3093, u3053u3093u306bu3061u306f"),

// "Мой третий MID-лет".

("greeting", "u79clu306e 3 u3063u3081u306e MIDlet"},

// "Кнопка нажата".

{"alert_title")

"u30dcu30bfu30f3u304cu62bcu3055u308cu307eu3057u305f"},

// "Кнопка была нажата".

"alert_text",

"u30dcu30bfu30f3u304cu62bcu3055u308cu3C7eu3057u305f!"}

// Пункт меню «Выход», {"exit", "u51fa53e3"},

// Экранная клавиша «Меню».

("menu", "u30elu30cbu30e6u30fc"),

// Пункт меню «Отмена».

("cancel", "u3Cadu30e4u30f3u30bbu30eb"),

// Пункт меню «Стоп». {"stop", "u505cu6b62"),

// Пункт меню «ОК». ("ok", "OK"},

// Экранная клавиша «Предупреждение», {"alert", "Alert"),

// Пункт меню "Скажи привет", ("sayhi","u30cfu30a4"},

// Пункт меню «Экран».

{"screen", "u30b9u30afu30eau30f3"),

// Пункт меню «Предмет», {"item", "u9805u76ee"),

// Пункт меню «Помощь».

("help", "u308d"},

// Значок приложения.

{"app_icon", applcon)

/**

Конструктор No-arg.

*/

public I18NDemoResources_ja JP()

{

super();

)

public Object [][] getContents ()

{

return contents;

{

// Необходим статический инициализатор для инициализации

// переменной, которая не может быть инициализирована в

// массиве содержимого. Например, мы не можем выделить что-либо

// в массиве содержимого для создания изображения и выполнить

// требуемую обработку исключений.

static

{

try

{

applcon = Image.createlmage("i!8n-ja_JP.png");

{

catch (lOException ioe)

{

System.out.println(ioe.getMessage());

ioe.printStackTrace();

}

}

}

В листинге 9.14 показан файл I18NDemoResources_zh_CH. Java, который определяет локализованные ресурсы для упрощенного китайского языка.

Листинг 9.14. Этот файл определяет локализованные ресурсы для региональной настройки zh_CN, Китай, приложения I18NDemo3

import javax.microedition.Icdui.Image; import Java.io.lOException;

/**

Данный класс определяет локализованные ресурсы для приложения I18NDemo3.

Вы извлекаете ресурс, вызывая метод getObjectO в классе ResourceBundle.

*/

public class I18NDemoResources_zh_CN

extends ListResourceBundle

{

// Содержит один из локализованных ресурсов. Нам необходимо

// инициализировать эту переменную в статическом инициализаторе

// данного класса.

private static Image applcon;

private Object [][] contents =

{

// Заголовок формы "Hello, World".

("title", "u54c8u7f57u4el6754c"),

// Текст формы "My third MIDlet".

("greeting", "u62llu76847b2cu4e09u4187 MIDlet"},

// Заголовок уведомления "Button Pressed". ("alert_title", "u6309u4eObu6309u9215"],

// Текст уведомления "A button was pressed!". ("alert_text", "u6309u4eOOu4187u6309u9215!"},

// Пункт меню «Exit».

("exit", "u767bu51fa"},

// Экранная клавиша «Menu», ("menu", "u76eeu5f54"},

// Пункт меню «Cancel», {"cancel", "u53d6u6d88"j,

// Пункт меню «Stop», ("stop", "u505cu6b62"},

// Пункт меню «OK». {"ok", "OK"),

// Экранная клавиша «Alert», {"alert", "u8b66u793a"),

// Пункт меню "Say Hi", ("sayhi", "u55e8"},

// Пункт меню «Screen». ("screen", "u87a2u5e55"),

// Пункт меню «Item», ("item", "u9879u76ee"},

// Пункт меню «Help», {"help", "u8bf4u660e"},

// Значок приложения. {"app_icon", applcon}

};

/**

Конструктор No-arg.

*/

public I18NDemoResources_zh CN()

{

super!);

{

public Object [][] getContents ()

{

return contents;

}

// Необходим статический инициализатор для инициализации

// переменной, которая не может быть инициализирована в

// массиве содержимого. Например, мы не можем выделить что-либо

// в массиве содержимого для создания изображения и выполнить

// требуемую обработку исключений.

static

{

try

{

applcon = Imagb.createlraage("i!8n-zh_CN.png");

}

catch (lOException ioe)

{

System.out.println(ioe.getMessage!)); ioe.printStackTrace();

}

}

}

Использование классификационных файлов Java имеет несколько преимуществ перед двумя предыдущими разработками. Прежде всего, оно позволяет избежать создания комплексной структуры потоков и анализа текстовых файлов, которые вы видели в предыдущем подходе. Доступ к ресурсам так же прост, как создание экземпляра класса. Более важно то, что пакеты ресурсов могут быть легко приспособлены к любому из объектов Java — не только к строкам — как локализованные ресурсы. Первым двум подходам, представленным в этой главе, приходилось определять атрибуты, чьи значения были именами классов, экземпляры которых нужно было создавать, и затем создавать экземпляры данных классов после считывания и анализа файла ресурса. Подход, основанный на пакетах ресурсов, создает экземпляры всех объектов неявно, когда пакет ресурсов создан. И классы пакетов ресурсов оставляют небольшой след, используя меньше ресурсов рабочей памяти, чем предыдущий подход.

1 ... 65 66 67 68 69 70 71 72 73 ... 86 ВПЕРЕД
Перейти на страницу:
Комментариев (0)
название