// This can eb a nested class in your screen class.
class URLButtonField extends ButtonField {
String url;
public URLButtonField(String label, String url) {
super(label);
this.url = url;
}
public String getURL() {
return url;
}
public void setURL(String url) {
this.url = url;
}
}
// member variable of your screen class- this will let you access it later
// to change the URL
URLButtonField bf;
// In your screen's constructor:
bf = new ButtonField("Example", "http://www.example.com");
bf.setFieldChangeListener( new FieldChangeListener() {
void fieldChanged(Field field, int context) {
if (field == this) {
BrowserSession session =- Browser.getDefaultSession();
session.displayPage(getURL());
}
}
} );
add(bf);
Затем вы можете изменить текстовый или целевой URL-адрес «bf» в любое время, и любое значение, на которое вы его измените, будет URL-адресом, который запускается при нажатии:
// In response to some activity:
bf.setText("Example Two");
bf.setURL("http://www.example.com/two");