es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

No puedo configurar la barra de herramientas desde mi actividad de fragmento.

Este es el código de mi fragmento de inicio, HomeFragment.kt:

package com.example.mywallpaper

import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment

class HomeFragment : Fragment() {

    override fun onCreateView(
        inflater: LayoutInflater, container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View? {
        // Inflar el diseño del fragmento
        return inflater.inflate(R.layout.fragment_home, container, false)
    }

    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
        // Inicializar la barra de acción
        (activity as AppCompatActivity).setSupportActionBar(main_toolbar)

        val actionBar = (activity as AppCompatActivity).supportActionBar
        actionBar!!.setTitle("Fire Wallpapers")
    }
}

Actualmente estoy viendo un tutorial sobre cómo hacer una aplicación de fondos de pantalla, aunque hice todo de la misma manera, tengo un error en la línea (activity as AppCompatActivity).setSupportActionBar(main_toolbar), donde dice referencia no resuelta.

Este es el código de la vista que contiene la barra de herramientas, donde se encuentra el elemento con id “main_toolbar”:

<com.google.android.material.appbar.appbarlayout android:id="@+id/main_app_bar" app:layout_constraintop_totopof="parent" app:layout_constraintend_toendof="parent" app:layout_constraintstart_tostartof="parent" android:layout_width="0dp" android:layout_height="wrap_content">
    <androidx.appcompat.widget.toolbar android:id="@+id/main_toolbar" android:background="@color/white" android:layout_width="match_parent" android:layout_height="wrap_content"></androidx.appcompat.widget.toolbar>
</com.google.android.material.appbar.appbarlayout>
Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El error “referencia no resuelta” en (activity as AppCompatActivity).setSupportActionBar(main_toolbar) puede deberse al hecho de que la referencia de main_toolbar no se reconoce en el fragmento actual. Por favor, asegúrese de que ha definido correctamente la vista main_toolbar en el archivo de diseño fragment_home.xml y que se ha importado en el archivo HomeFragment.kt utilizando el statement de importación adecuado.

    Además, es posible que desee comprobar si el id del toolbar en el archivo XML coincide con el id utilizado en la referencia. Si no coinciden, esto también podría causar el error de referencia no resuelta.

Comments are closed.