📄 resources.java
字号:
// Copyright (c) 2005 Sony Ericsson Mobile Communications AB
//
// This software is provided "AS IS," without a warranty of any kind.
// ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
// INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
// PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.
//
// THIS SOFTWARE IS COMPLEMENTARY OF JAYWAY AB (www.jayway.se)
package com.ultrapower;
import java.io.InputStream;
import java.util.Hashtable;
import javax.microedition.lcdui.Image;
/**
* Primitive resource mapper.
*
* @author Peter Andersson
*/
public class Resources
{
// Text keys
private static int TXTID = 0;
// text / page titles
public static final int TXT_T_BLOGLINESBUDDY = TXTID++;
public static final int TXT_T_MYFEEDS = TXTID++;
public static final int TXT_T_SETTINGS = TXTID++;
public static final int TXT_T_STAT = TXTID++;
// text / item labels
public static final int TXT_I_LOGINBLOGLINES = TXTID++;
public static final int TXT_I_LOGINFLICKR = TXTID++;
public static final int TXT_I_SETTINGS = TXTID++;
public static final int TXT_I_ABOUT = TXTID++;
public static final int TXT_I_EXIT = TXTID++;
public static final int TXT_I_STAT = TXTID++;
public static final int TXT_I_S_SETTINGS_INPUT_USERMAIL = TXTID++;
public static final int TXT_I_S_SETTINGS_INPUT_USERPASS = TXTID++;
// text / commands
public static final int TXT_C_OK = TXTID++;
public static final int TXT_C_CANCEL = TXTID++;
public static final int TXT_C_BACK = TXTID++;
public static final int TXT_C_HELP = TXTID++;
public static final int TXT_C_REFRESH = TXTID++;
// text / popup related
public static final int TXT_YES = TXTID++;
public static final int TXT_NO = TXTID++;
public static final int TXT_CANCEL = TXTID++;
public static final int TXT_OK = TXTID++;
// text / helptexts
public static final int TXT_H_PL_INPUT_USERMAIL = TXTID++;
public static final int TXT_H_PL_INPUT_USERPASS = TXTID++;
public static final int TXT_H_STAT = TXTID++;
public static final int TXT_H_SETTINGS = TXTID++;
public static final int TXT_H_S_INPUTMAIL = TXTID++;
public static final int TXT_H_S_INPUTPASS = TXTID++;
// text / other stuff
public static final int TXT_ABOUT = TXTID++;
// 要调用的web service的地址以及其他参数
public static final int TXT_P_WS_NAMESPACE = TXTID++;
public static final int TXT_P_WS_METHOD_LISTSUBS = TXTID++;
public static final int TXT_P_WS_METHOD_GETITEMS = TXTID++;
/*
* 设置中,是否走cmwap代理的文本提示
*/
public static final int TXT_I_S_PROXY = TXTID++;
public static final int TXT_H_S_PROXY = TXTID++;
// Image keys
private static final int OFFSET_IMG = 100;
public static final int IMG_BACKGROUND = 100;
public static final int IMG_PROXY_ON = 101;
public static final int IMG_PROXY_OFF = 102;
// Resource (sound) keys
private static final int OFFSET_SND = 200;
public static final int SND_JAZZY = 203;
// Text data
protected static final char[][] TEXTBUF = {
"Bloglines手机伴侣".toCharArray(),
"My Feeds".toCharArray(),
"设置".toCharArray(),
"统计".toCharArray(),
"登录Bloglines".toCharArray(),
"登录Flickr".toCharArray(),
"设置".toCharArray(),
"关于".toCharArray(),
"退出".toCharArray(),
"统计信息".toCharArray(),
"Bloglines用户名".toCharArray(),
"Bloglines登录密码".toCharArray(),
"确认".toCharArray(),
"取消".toCharArray(),
"返回".toCharArray(),
"帮助".toCharArray(),
"刷新".toCharArray(),
"YES".toCharArray(),
"NO".toCharArray(),
"CANCEL".toCharArray(),
"确认".toCharArray(),
("请在上面的编辑框中输入您的Bloglines账户的电子邮件名,如user@example.com。\n\n").toCharArray(),
("请在上面的编辑框中输入您的Bloglines账户的登录密码。\n\n").toCharArray(),
("展示您登录并浏览的统计信息。").toCharArray(),
("设置您的Bloglines用户名和密码以及其他个性化设置。").toCharArray(),
("在这里请您输入Bloglines的账户对应的电子邮件地址。").toCharArray(),
("在这里请您输入Bloglines的账户对应的登录密码。").toCharArray(),
("Copyright 2005 郑昀 程序以及代码受GPL协议保护。\n\n" +
"感谢CCTV MTV\n" +
"感谢我的爸爸妈妈\n" +
"感谢我的妻子\n" +
"感谢Java感谢Eclipse感谢Nokia感谢Bloglines\n\n" +
"2005年12月27日于北京\n").toCharArray(),
// 要调用的web service的地址以及其他参数
//"http://localhost:8080/flickrBuddy/services/Buddycast".toCharArray(),
"http://219.238.239.166:8088/flickrBuddy/services/Buddycast".toCharArray(),
"listsubs".toCharArray(),
"getitems".toCharArray(),
/*
* 设置中,是否走cmwap代理的文本提示
*/
"用cmwap代理".toCharArray(),
("默认使用cmwap代理,您可以在选择如何接入互联网时选择移动梦网。\n" +
"如果你不使用代理,请选择接入点为GPRS连接互联网,这样资费可能较贵。\n" +
"设置完之后有可能需要重新启动本程序才能生效。").toCharArray(),
};
/** Image cache */
protected static Hashtable m_images = new Hashtable();
// Image resource names
protected static final String[] IMGNAME_MAP ={
"background.png",
"black.png",
"white.png",
};
// Resource (audio) names
protected static final String[] RESOURCE_MAP = {
"bluegammon.mid",
};
/**
* Returns specified resource as stream
* @param resourceId The id of the resource.
* @return An inputstream to the resource.
*/
public static InputStream getResource(int resourceId)
{
resourceId -= OFFSET_SND;
String sResource = "/res/music/" + RESOURCE_MAP[resourceId];
/*
* 必须使用Thread.currentThread().getClass(),因为调用者是静态的,
* 这样如果还是使用Resources.class.getResourceAsStream
* 会导致在Nokia S60真机上发生“91 java.lang.error”异常
* !特此提醒!
*/
return Thread.currentThread().getClass().getResourceAsStream(
sResource);
/*
* 注意原来这里写的是"/" +,始终无法加载;
* 所以我改为了"/res/" +
*/
//return Resources.class.getResourceAsStream("/res/music/" + RESOURCE_MAP[resourceId]);
}
/**
* Returns specified text as character array.
* @param id The id of the text.
* @return A text as char array.
*/
public static char[] getChars(int id)
{
return TEXTBUF[id];
}
/**
* Returns specified text as string.
* @param id The id of the text.
* @return A text as String.
*/
public static String getString(int id)
{
return new String(getChars(id));
}
/**
* Returns specified image.
* @param id The id of the image.
* @return An image.
*/
public static synchronized Image getImage(int id)
{
id -= OFFSET_IMG;
Image img = (Image)m_images.get(new Integer(id));
if (img == null)
{
try
{
/*
* 注意原来这里写的是"/" +,始终无法加载图像;
* 所以我改为了"/res/" +
*/
img = Image.createImage("/res/icons/" + IMGNAME_MAP[id]);
System.out.println("get image:" + IMGNAME_MAP[id]);
m_images.put(new Integer(id), img);
}
catch (Exception e)
{
System.out.println("Error getting resource img " + IMGNAME_MAP[id]
+ ">>" + e.getMessage());
e.printStackTrace();
}
}
return img;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -