Clasificación de la posición de los elementos mediante FirebaseRecyclerAdapter
En mi aplicación, los usuarios pueden clasificar fácilmente el contenido con un criterio especial, que es orderByChild .
Si buscan un documento de física en Suiza
- FirebaseUI Auth - Error de inicio de sesión de Facebook: respuesta de debug_token fallida de Facebook
- PopulateViewHolder no se ejecuta con FirebaseRecyclerAdapter (Android)
- Biblioteca de FirebaseUI Auth: falla en el inicio de sesión de Google con: W / AuthMethodPicker: inicio de sesión de Firebase sin éxito
- ¿Sólo rellenar viewHolder con mensajes recuperados de la base de datos?
- FirebaseUI autenticación con Facebook no funciona
.orderByChild("Tag_country").equalTo("Physics_Switzerland");
Si buscan cualquier documento en Suiza
.orderByChild("Country").equalTo("Switzerland");
Los usuarios pueden clasificar los contenidos en función de su fecha de publicación, el número de veces que se han visto o la cantidad de cerebros \ le gusta un solo post.
.orderByChild("Views") // sort list by highest views .orderByChild("Brains") // sort list by most likes\brains .orderByChild("TimeStamp") // sort list by newest post\edit
Sin embargo, un usuario no puede ordenar el contenido más de una vez, como todos sabemos
Sólo puede utilizar un método de orden por cada vez. Llamar un método de orden por varias veces en la misma consulta genera un error.
Así que algo como OrderByChild("Tag_country).equal("Physics_Switzerland").OrderByChild("Views");
Realmente se bloqueará su aplicación
He estado intentando ordenar una consulta ya especificada en función del número de veces que se ha visto un documento. Es decir, en orden descendente, muéstreme documentos de física en Suiza desde las vistas más altas a las más bajas
Cómo se ajusta el FirebaseRecycler
final Query DBquery = FirebaseDatabase.getInstance().getReference().child("PDF").child("Content") .orderByChild("tag_Country").equalTo("Chemistry_Switzerland"); FirebaseRecyclerAdapter<pdfGstrings, Pdf_BlogViewHolder> fbRecyclerAdapter; fbRecyclerAdapter = new FirebaseRecyclerAdapter<pdfGstrings, Pdf_BlogViewHolder>( pdfGstrings.class, R.layout.pdf_g_card, Pdf_BlogViewHolder.class, DBquery ) { PdfRecycler.setAdapter(fbRecyclerAdapter); fbRecyclerAdapter.notifyDataSetChanged();
Cómo se está poblando la vista
@Override protected void populateViewHolder(final Pdf_BlogViewHolder viewHolder, final pdfGstrings model, final int position) { final String post_key = getRef(position).getKey(); Render(viewHolder, model, post_key); } };
Puedo acceder a cada cuenta de Pdf Views por
viewHolder.ViewCounts
La consulta
¿Cómo puedo manipular \ reordenar las posiciones de los artículos, cliente-lado , y basado en un valor entero? Aquí el valor entero de viewHolder.ViewCounts
Ejemplo: Alinee la celda con 325 vistas en la parte superior de la celda con 92 vistas, mediante programación.
Estructura de los niños
Pdf Content -Kd5YcEuE1yKTSdpaZi7 "Brains" : 2, "Country" : "Switzerland", "Tag_country" : "Chemistry_Switzerland", "TimeStamp" : 12849127519, "Views" : 92, -Kd5YcoijSDujaxpaZsE "Brains" : 12, "Country" : "Switzerland", "Tag_country" : "Chemistry_Switzerland", "TimeStamp" 14349127519 "Views" : 352, -Kd5YHDIUscDujaxpaZ13 "Brains" : 1, "Country" : "Malaysia", "Tag_country" : "Mathematics_Malaysia", "TimeStamp" 14341221519 "Views" : 218, -Kd5YHDIUJAdhxaxpas93 "Brains" 91, "Country" : "Argentine", "Tag_country" : "Archaeology_Argentine", "TimeStamp": 14949127519, "Views" : 928,
- ¿Cómo actualizar la referencia de consulta de un adaptador de reciclador de reciclaje?
- ¿Cómo usar firebase con ViewPager y FragmentPagerAdapter?
- FirebaseUI y Firebase, ¿cuál es la diferencia?
- Configuración de Proguard para la biblioteca Firebase-UI
- Cómo hacer la vista de mensaje roscado con enviar y recibir mensajes en dos lados con la vista de reciclador
- Filtra los datos en firebase con SearchView
- FirebaseRecyclerAdapter y multiplicar tipos de elementos en android
- ¿Cómo eliminar un usuario de Firebase de la aplicación para Android?
En mi consulta estaba luchando concting un entero dentro de una cadena
OrderByChild("Tag_country_views")
La solución era tranquila y sencilla:
- Mantenga el entero en la estructura de su hijo con su método de incremento
- Cree otro valor, que envuelva el valor Views en una String
String.valueOf(vh.Tag+"_"+vh.Country+"_"+vh.ViewsCount)
- En lugar de OrderByChild solo, considere el uso de
startAt
ylimitTo
así
Por ejemplo: ¿Un filtro de usuario para el documento matemático más visto en los Reinos Unidos? Entonces, todo lo que hay que hacer es
OrderByChild("Tag_Country_Views") .startAt("Mathematics_United Kingdoms) .limitToFirst(DocumentsCount);
(resultado)
También hay un truco menor necesario, el recuento debe, preferentemente, comenzar en 1,000,000,000
visitas, mientras que su incremento sigue siendo 1+
De esta manera, la consulta de String_value es factible.
Dividir por mil millones y usar el operador del módulo revelará el recuento real de la visión
int CarrotCake = views % 1000000000;
- ¿Cómo obtener el color de fondo de notificación predeterminado para la notificación personalizada en Lollipop?
- Android Tablet IDE para Python y Java