如何从一个屏幕发送字符串值到另一个黑莓?(How to send String value from

2019-07-30 03:55发布

请人帮我从一个屏幕传递字符串值在黑莓另一个屏幕

Answer 1:

我会说这样做从第一屏幕推第2个屏幕,而不是从应用程序。
在应用程序推第一个画面:

public class App extends UiApplication {
    public static void main(String[] args) {
        App app = new App();
        app.enterEventDispatcher();
    }   
    public App() {
        FirstScreen scr = new FirstScreen();
        pushScreen(scr);
    }
}

第二个屏幕有字符串值setter方法:

public class SecondScreen extends MainScreen {

    String mTextValue = null;
    LabelField mLabel = null;

    public void setTextValue(String textValue) {
        mTextValue = textValue;
        mLabel.setText(mTextValue);
    }

    public SecondScreen() {
        super();        
        mLabel = new LabelField();
        add(mLabel);
    }
}

在第一个屏幕上创建第二个,设置字符串值,并将它推。 弹出第一个屏幕,如果你不需要IT投资回报:

public class FirstScreen extends MainScreen implements FieldChangeListener {

    BasicEditField mEdit = null; 
    ButtonField mButton = null;

    public FirstScreen() {
        super();                
         mEdit = new BasicEditField("input: ", "some text");
         add(mEdit);
         mButton = new ButtonField("Go second screen");
         mButton.setChangeListener(this);
         add(mButton);
    }
    public void fieldChanged(Field field, int context) {
        if(mButton == field)
        {
            SecondScreen scr = new SecondScreen();
            scr.setTextValue(mEdit.getText());
            UiApplication.getUiApplication().pushScreen(scr);
            UiApplication.getUiApplication().popScreen(this);
        }
    }   
}


Answer 2:

我想你可能需要一点点在您所需要的更加清晰。 但是考虑你原来的问题从字面上看,下面的代码位的是你会怎么做。

public class MyApp extends UiApplication {
  MyApp() {
    MyFirstScreen screenOne = new MyFirstScreen();
    pushScreen(screenOne);
    String str = screenOne.getWhateverStringINeed();
    MySecondScreen screenTwo = new MySecondScreen(str);
    pushScreen(screenTwo);
  }
}

上面的代码将推动两个屏幕到BlackBerry显示堆,与所述第二屏幕基本上具有与字符串(你发生任何字符串需要),从第一屏幕。



文章来源: How to send String value from one screen to another in Blackberry?