2010-04-23 19 views
5

tengo un cursor, y que tiene, digamos, 40 filas, que quieren ocultar algunas filas cuando el usuario compruebe una casilla de verificación.cómo ocultar filas específicas de un cursor en Android

una manera que se ejecute la consulta de nuevo en el cursor, pero no me ayuda porque la condición se realiza mediante Java (cálculo de equilibrio, con muchas lógica).

Necesito algo que hará que la fila actual, y la de regreso si puede ser espectáculo o no.

cualquier ayuda será apreciada.

Respuesta

5

heredo CursorWrapper y anular algunos de los métodos, aquí está el código:

public class SelectableCursorWrapper extends CursorWrapper { 

private HashSet<Integer> mWhichShow; 

public SelectableCursorWrapper(Cursor cursor, HashSet<Integer> whichToShow) { 
    super(cursor); 

    mWhichShow = whichToShow; 
} 

@Override 
public int getCount() { 
    return mWhichShow.size(); 
} 

@Override 
public boolean moveToPosition(int position) { 
    if (position >= super.getCount()) { 
     return false; 
    } 

    if (mWhichShow.contains(position)) { 
     return super.moveToPosition(position); 
    } else { 
     // Recursion on this method to move to the next element properly 
     return this.moveToPosition(position + 1); 
    } 
} 
} 

gracias por cualquier persona que tratan de ayudar!

+0

¿Exactamente cómo se utiliza este? –

+0

@SteveKamau, observe que este pedazo de código es casi 6 años de edad. No estoy seguro de que esta sea la mejor manera de ocultar filas en estos días. Pero, ¿qué es exactamente lo que falta? – Noam

Cuestiones relacionadas