java-me - 如何控制多个 Rss 文件的流量

标签 java-me lwuit nokia midp

我使用 LWUIT j2me(java) 为 2 个 xml 文件开发了 RssFeed 应用程序,现在我想在 LWUIT 选项卡上显示这 2 个 xml 文件。

这意味着,当我的应用程序运行时,将显示默认选项卡(在该选项卡上应显示我的第一个 Rss xml 文件标题),而当用户单击 tab2 时,应显示我的第二个 Rss xml 标题。

我可以在两个选项卡上显示一个 rss 文件的相同标题,如何控制我的流程来完成我的任务?

这是我的代码:

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();     
}
}

最佳答案

你应该移动到下面的代码

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参数不同的列表newsItem是定向的。
更新
以下是我认为您应该如何实现 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 .

关于java-me - 如何控制多个 Rss 文件的流量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11989031/

相关文章:

java - J2ME - LWUIT Java 运行时异常 - 您必须在类路径中的 LWUIT 之前包含平台端口>

java - 检查 j2me 中的互联网是否正常工作

java-me - 将 Java 手机/电话上的通话保存为 mp3 或任何音频格式/文件

unit-testing - 设置 Mobile JUnit 测试以在 JUnit 下运行

java-me - 如何在虚拟键盘隐藏时从 LWUIT 文本字段中移除焦点并正确调整表单大小?

java - j2ME 最快的 Dijkstra 算法

blackberry - lwuit 中的 BBM sdk

java - 如何在诺基亚asha sdk1.0中使textArea可滚动

java - J2ME 中可以通过字符串值设置日期字段吗?

java-me - 更新位于二进制包中的 J2ME 中的 .txt 文件