Pregunta

Algo me está volviendo loco en BlackBerry Dev. Tengo una costumbre EditField. Aquí está el código:

private EditField m_Txt=new EditField(EditField.FOCUSABLE |
                                        EditField.FILTER_DEFAULT) {
    protected void layout(int width, int height)
    {
        setExtent(Display.getWidth(), m_TxtHeight);
    }
    public boolean isFocusable()
    {
        return true;
    }

    protected void onFocus(int direction)
    {
        super.onFocus(direction);
        invalidate();
    }

    protected void onUnfocus() {
        super.onUnfocus();
        invalidate();
    }
};

La cuestión es que no puede obtener el enfoque. En realidad llama isFocusable etc. Pero el cursor no se muestra y no puedo escribir nada. Seguramente me falta algo ya que soy nuevo en BlackBerry Dev, pero ¿qué?

Muchas gracias

¿Fue útil?

Solución 2

De hecho, he encontrado la respuesta. Olvidé totalmente llamar al método Super.Layout. Entonces el método de diseño debería ser:

protected void layout(int width, int height)
{
    super.layout(Display.getWidth(), m_TxtHeight);
    setExtent(Display.getWidth(), m_TxtHeight);
}

Otros consejos

¿Con qué sistema operativo estás probando? Si es una versión reciente de OS6, He encontrado en esas versiones No obtiene un cursor en los campos de edición de texto hasta que habilite el modo de selección.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top