champ uniquement du navigateur de Blackberry, pas toute application de mise en page
-
27-10-2019 - |
Question
J'ai un verticalfieldmanager avec des boutons et en dessous d'un BrowserField. Le problème est que lorsque je fais défiler verticalement dans le BrowserField la mise en page l'ensemble des rouleaux app avec elle (!) .. Je l'ai cherché comme un homme fou pour une sollution, mais ne l'ai pas encore trouvé quoi que ce soit. J'ai essayé de désactiver défilement vertical dans l'application, mais cela ne les résultats à ne pas être en mesure de faire défiler la BrowserField / page d'accueil.
Toutes les suggestions?
Merci
La solution
Hope ce code vous aide: essayez ceci:
public class NewsBrowserScreen extends MainScreen implements FieldChangeListener
{
String url="http://www.google.com/news/";
VerticalFieldManager vertical;
BrowserField browserField;
ButtonField click;
public NewsBrowserScreen()
{
createGUI();
}
private void createGUI()
{
click=new ButtonField("Click",Field.FIELD_HCENTER);
click.setChangeListener(this);
add(click);
vertical=new VerticalFieldManager(VERTICAL_SCROLL|VERTICAL_SCROLLBAR|HORIZONTAL_SCROLL|HORIZONTAL_SCROLLBAR)
{
protected void sublayout(int maxWidth, int maxHeight)
{
super.sublayout(Display.getWidth(),250);
setExtent(Display.getWidth(),250);
}
};
vertical.setBackground(BackgroundFactory.createSolidBackground(Color.GREEN));
vertical.setPadding(10, 0, 10, 0);
add(vertical);
}
protected boolean onSavePrompt()
{
return true;
}
public boolean onMenu(int instance)
{
return true;
}
public void fieldChanged(Field field, int context)
{
if(field==click)
{
browserField=new BrowserField();
vertical.add(browserField);
browserField.requestContent(url);
}
}
}
I Get comme ceci ci-dessous l'image;
Autres conseils
Vous pouvez ajouter un VerticalFieldManager
à votre MainScreen
et ajoutez votre BrowserField
à votre VerticalFieldManager
. Vous devez définir le style de VerticalFieldManager
avec VERTICAL_SCROLL | VERTICAL_SCROLLBAR
et effacer le syle de votre MainScreen