Saltar al contenido

Crear FloatingActionButton programáticamente (sin xml)

Estate atento porque en este enunciado encontrarás el hallazgo que buscas.

Solución:

Hay dos en los que puedo pensar

Usando solo Java

Crear un FloatingActionButton directamente en código como

public FloatingActionButton getFab(Context context) 
    FloatingActionButton fab = new FloatingActionButton(context);
    ...
    return fab;

Inflando el diseño

public FloatingActionButton getFab(Context context, ViewGroup parent) 
    LayoutInflater inflater = LayoutInflater.from(context);
    return (FloatingActionButton) inflater.inflate(R.layout.myfab, parent, false);

Más sobre inflador

Editar:

Puedes usar setBackgroundTintList y setRippleColor para establecer el 2 attributes.

Y para adjuntarlo a los padres lo haces.

layout.addView(v);

Pero me siento usando LayoutInflater es mejor porque realiza las dos tareas de generar un FloatingActionButton y adjuntarlo a su padre.

inflater.inflate(R.layout.myfab, layout, true)

Podemos lograr crear un botón de acción flotante en programáticamente



Este es el archivo de diseño xml principal. No dentro de este archivo de diseño principal, podemos crear un botón de acción flotante con el siguiente código en el archivo de clase.

public class MyClass extends AppCompatActivity
    RelativeLayout relativeLayout;

    protected void onCreate(Bundle savedInstanceState)
        super.onCreate(savedInstanceState);
        setContentView(R.layout.layout_name);

        relativeLayout = (RelativeLayout) findViewByID(R.id.my_relative_layout);

        FloatingActionButton fab = new FloatingActionButton(getContext());
        fab.setId(R.id.fab_location_main);
        fab.setLayoutParams(new RelativeLayout.LayoutParams(
                RelativeLayout.LayoutParams.WRAP_CONTENT,
                RelativeLayout.LayoutParams.WRAP_CONTENT
                ));
        relativeLayout.addView(fab);
    

Ahora

Te mostramos las reseñas y valoraciones de los lectores

Si te gustó nuestro trabajo, puedes dejar un escrito acerca de qué le añadirías a este enunciado.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *