Java me 如何控制多个Rss文件的流
我使用LWUIT j2me(java)为2个xml文件开发了RssFeed应用程序,现在我想在LWUIT选项卡上显示这2个xml文件 这意味着,当我的应用程序运行时,将显示默认选项卡(在该选项卡上,应显示我的第一个Rss xml文件标题),当用户单击选项卡2时,应显示我的第二个Rss xml标题 我能够在两个选项卡上显示一个rss文件的相同标题,如何控制我的流程来完成我的任务 这是我的代码:Java me 如何控制多个Rss文件的流,java-me,lwuit,nokia,midp,Java Me,Lwuit,Nokia,Midp,我使用LWUIT j2me(java)为2个xml文件开发了RssFeed应用程序,现在我想在LWUIT选项卡上显示这2个xml文件 这意味着,当我的应用程序运行时,将显示默认选项卡(在该选项卡上,应显示我的第一个Rss xml文件标题),当用户单击选项卡2时,应显示我的第二个Rss xml标题 我能够在两个选项卡上显示一个rss文件的相同标题,如何控制我的流程来完成我的任务 这是我的代码: public class XMLMidlet extends MIDlet implements Act
public class XMLMidlet extends MIDlet implements ActionListener {
public XMLMidlet() {
Display.init(this);
news = new Vector();
m_backCommand = new Command("Back");
cmdExit = new Command("EXIT");
cmdDetails = new Command("Details");
}
public void startApp() {
//RssFeed URL's
String urls[] = {"http://topnews-23.rss",
"http://topstory-12.rss"};
for(int i=0;i<urls.length;i++){
ParseThread myThread = new ParseThread(this,urls[i]);
//this will start the second thread
myThread.getXMLFeed(urls[i]);
}
}
//method called by the parsing thread
public void addNews(News newsItem,String url) {
try{
news.addElement(newsItem);
form1 = new Form();
myNewsList = new List(newsVector);
newsList =new List(newsVector);
myNewsList.setRenderer(new NewsListCellRenderer());
newsList.setRenderer(new NewsListCellRenderer());
tabs=new Tabs(Component.TOP);
tabs.addTab("TopNews", myNewsList);
tabs.addTab("Topstory",newsList);
form1.addComponent(tabs);
form1.show();
}
catch(Exception e){
e.printStackTrace();
}
}
公共类XMLMidlet扩展MIDlet实现ActionListener{
公共XMLMidlet(){
Display.init(this);
新闻=新向量();
m_backCommand=新命令(“Back”);
cmdExit=新命令(“退出”);
cmdDetails=新命令(“详细信息”);
}
公开作废startApp(){
//RssFeed URL的
字符串URL[]={”http://topnews-23.rss",
"http://topstory-12.rss"};
对于(int i=0;i您应该移到代码下面
myNewsList = new List(newsVector);
newsList =new List(newsVector);
myNewsList.setRenderer(new NewsListCellRenderer());
newsList.setRenderer(new NewsListCellRenderer());
tabs=new Tabs(Component.TOP);
form1 = new Form();
tabs=new Tabs(Component.TOP);
tabs.addTab("TopNews", myNewsList);
tabs.addTab("Topstory",newsList);
从addNews
方法到构造函数XMLMidlet
addNews
方法应使用url
参数来区分新闻项
指向哪个列表。
更新
下面是我认为您应该如何实现addNews
方法:
public void addNews(News newsItem, String url) {
if (url.endsWith("topnews-20.rss")) {
myNewsList.addElement(newsItem);
} else if (url.endsWith("topstory-25.rss")) {
newsList.addElement(newsItem);
}
}
serRenderer
不需要从addNews
调用,而form1.show()
应该移动到startApp