Pergunta

Eu tenho um gerenciador de campo vertical com botões e abaixo dele um campo de navegador.O problema é que quando eu rolar verticalmente no campo do navegador, todo o layout do aplicativo rola com ele (!). Estou parecendo um louco por causa de uma solução, mas ainda não encontrei nada.Tentei desativar a rolagem vertical no aplicativo, mas isso só resultou em não ser possível rolar o campo do navegador / página inicial.

Alguma sugestão?

Obrigado

Foi útil?

Solução

Espero que este código o ajude: tente isto;

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

Eu fico assim abaixo da imagem;

Google News

Outras dicas

Você pode adicionar um VerticalFieldManager ao seu MainScreen e adicionar seu BrowserField ao seu VerticalFieldManager.Você deve definir o estilo de VerticalFieldManager com VERTICAL_SCROLL | VERTICAL_SCROLLBAR e limpar o estilo de seu MainScreen

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top