¿El uso de la etiqueta de flujo FlowTagLayout del marco XUI para realizar las funciones que el Android nativo no tiene?


Aún así, se recomienda que cree una nueva página o que se proyecte a sí mismo al realizar la prueba, para evitar otros factores que puedan hacer que los resultados fallen.

Paso 1: configurar el entorno XUI

El blog del entorno de configuración está configurando el marco XUI . No entraré en detalles aquí. No podré echarle un vistazo. El proceso es bastante detallado. Si no lo entiende, puede preguntarme y discutirlo juntos.

Una vez completada la configuración, procedemos al segundo paso.

Paso 2: escriba la página xml de FlowTagLayout.

el código se muestra a continuación:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <com.xuexiang.xui.widget.flowlayout.FlowTagLayout
        android:id="@+id/flowTagLayout"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_marginStart="16dp"
        android:layout_marginTop="32dp"
        android:layout_marginEnd="16dp"
        app:ftl_check_mode="multi"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />


</androidx.constraintlayout.widget.ConstraintLayout>

Echemos un vistazo a la tabla de atributos de la etiqueta de flujo FlowTagLayout:
single es selección única, multi es selección múltiple.
Inserte la descripción de la imagen aquí
Vemos aquí que ftl_entries se puede inicializar y asignar. No hay ningún problema con la asignación, pero hay un problema con el valor. No recomiendo este método. Asignación.

El tercer paso: el valor seleccionado de la etiqueta de flujo en la página Actividad.

el código se muestra a continuación:

import android.os.Bundle;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

import com.xuexiang.xui.XUI;
import com.xuexiang.xui.widget.flowlayout.FlowTagLayout;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {
    
    
    private FlowTagLayout flowTagLayout;
    List<String> flowadd=new ArrayList<>();
    List<String> list=new ArrayList<>();
    List<Integer> integers=new ArrayList<>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    
    
        super.onCreate(savedInstanceState);
        XUI.initTheme(this);
        setContentView(R.layout.activity_main);
        flowTagLayout=findViewById(R.id.flowTagLayout);
        flowadd.add("计算机");
        flowadd.add("医学");
        flowadd.add("药学");
        flowadd.add("文管");
        flowadd.add("针灸推拿");
        flowTagLayout.setItems(flowadd);
        flowTagLayout.setOnTagSelectListener(new FlowTagLayout.OnTagSelectListener() {
    
    
            @Override
            public void onItemSelect(FlowTagLayout parent, int position, List<Integer> selectedList) {
    
    
                integers=parent.getSelectedIndexs();
                list.clear();
                for(Integer i:integers){
    
    
                    list.add(flowadd.get(i));
                }
             Toast.makeText(MainActivity.this,"list="+list,Toast.LENGTH_SHORT).show();
            }
        });
    }
}

Análisis de código:
Inserte la descripción de la imagen aquí

Ver la situación de la interfaz:
Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí
Aquí podemos obtener el valor de la etiqueta del flujo.

Si desea saber más sobre XUI, puede consultar mis otros artículos:
XUI framework implementa su propio tablayout (indicador TabBar) + viewpage para lograr el cambio de página?
¿El marco XUI implementa un cuadro EditText que se ve mejor y tiene más funciones que el marco nativo? ¿Y cómo obtener el valor de EditText?
¿El uso del botón Botón del marco XUI para simplificar su función de cuenta atrás?
Todavía se está actualizando, porque yo también soy Xiaobai, y todo lo que dije es más básico.

Supongo que te gusta

Origin blog.csdn.net/qq_45137584/article/details/110943568
Recomendado
Clasificación