熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

如何實現在不同screen的切換

2013-11-23 19:10:02  來源: Java核心技術 

  在midlet開發中屏幕只有一個如果需要顯示不同的內容可以在後台先准備好要顯示的內容然後通過Displaysetcurrent(displayable d)函數來解決這個問題

  但是如何控制顯示不同的內容呢?如果是程序裡自動控制那麼就不存在這個問題如果需要用戶干預進行屏幕的切換又是如何實現的呢?

  其實思路也很簡單為每個屏幕設置相應的menu然後這些menu的控制統一由一個類來處理那麼就可以實現不同屏幕之間的切換了

  package hello;

  import javaxmicroeditionmidlet*;

  import javaxmicroeditionlcdui*;

  public class HelloMIDlet extends MIDlet implements CommandListener {

  private Command exitCommand; // The exit command

  private Command view;

  private Display display; // The display for this MIDlet

  private TextBox t;

  private MyCanvas m;

  public HelloMIDlet() {

  display = DisplaygetDisplay(this);

  exitCommand = new Command(Exit CommandEXIT );

  view = new Command(View CommandITEM );

  }

  public void startApp() {

  t = new TextBox(Hello Hello World! );

  taddCommand(exitCommand);

  taddCommand(view);

  tsetCommandListener(this);

  MyCanvas m=new MyCanvas();

  maddCommand(exitCommand);

  maddCommand(view);

  msetCommandListener(this);

  if (SystemgetProperty(

  microeditioniofileFileConnectionversion) != null)

  tsetTicker(new Ticker(SystemgetProperty(

  microeditioniofileFileConnectionversion)));

  else

  tsetTicker(new Ticker(no));

  displaysetCurrent(m);

  }

  public void pauseApp() {

  }

  public void destroyApp(boolean unconditional) {

  }

  public void commandAction(Command c Displayable s) {

  if (c == exitCommand) {

  destroyApp(false);

  notifyDestroyed();

  }

  if (c==view && s = m)

  {

  displaysetCurrent(t);

  }

  }

  }

  以上代碼中主類實現了Commandlistener接口所有屏幕的command都由這個類負責監聽和處理那麼相當於由這個主類來決定如何切換屏幕

  就這麼簡單


From:http://tw.wingwit.com/Article/program/Java/hx/201311/26391.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.