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.

Declaración inaccesible intentando configurar un botón que abrirá una nueva actividad.

Soy un traductor de español que traduce documentos de TI. Traduzca lo siguiente al español. No traduzca el código y la salida en markdown

Soy muy nuevo en esto. Tengo una pregunta rápida. Obtengo una “declaración inaccesible en la línea 30 (establecimientos = findViewById (R.id.establecimientos) mientras intento configurar ese botón para llevarme a una nueva actividad. ¿Puede ayudarme a señalar qué está mal, gracias?

Esto es lo que parece mi java:

package com.example.ceibasxi;

import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Button;

import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;


public class PaginaDos extends AppCompatActivity {
    Button establecimientos;
    Button servicios;
    Button productos;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_pagina_dos);

        Toolbar myToolbar = findViewById(R.id.my_toolbar);
        setSupportActionBar(myToolbar);
    }

    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_appbar, menu);
        return true;


establecimientos = findViewById(R.id.establecimientos);
establecimientos.setOnClickListener(v -> {

servicios = findViewById(R.id.servicios);
servicios.setOnClickListener(v1 -> {
Intent intent1 = new Intent(PaginaDos.this, PaginaServicios.class);
startActivity(intent1);

productos = findViewById(R.id.producto);
productos.setOnClickListener(v11 -> {
Intent intent2 = new Intent(PaginaDos.this, PaginaProductos.class);
startActivity(intent2);}

);});})
    ;}}

Soy un traductor de español que traduce documentos de TI. Traduzca lo siguiente al español. No traduzca el código y la salida en markdown.

Soy muy nuevo en esto. Tengo una pregunta rápida. Obtengo una “declaración inaccesible en la línea 30 (establecimientos = findViewById (R.id.establecimientos) mientras intento configurar ese botón para llevarme a una nueva actividad. ¿Puede ayudarme a señalar qué está mal, gracias?

Esto es lo que parece mi java:

package com.example.ceibasxi;

import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Button;

import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;


public class PaginaDos extends AppCompatActivity {
    Button establecimientos;
    Button servicios;
    Button productos;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_pagina_dos);

        Toolbar myToolbar = findViewById(R.id.my_toolbar);
        setSupportActionBar(myToolbar);
    }

    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_appbar, menu);
        return true;


        establecimientos = findViewById(R.id.establecimientos);
        establecimientos.setOnClickListener(v -> {

            servicios = findViewById(R.id.servicios);
            servicios.setOnClickListener(v1 -> {
                Intent intent1 = new Intent(PaginaDos.this, PaginaServicios.class);
                startActivity(intent1);

                productos = findViewById(R.id.producto);
                productos.setOnClickListener(v11 -> {
                    Intent intent2 = new Intent(PaginaDos.this, PaginaProductos.class);
                    startActivity(intent2);
                });
            });
        });

    }
}
Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El problema está en la ubicación de las últimas tres líneas de código, que inicializan y establecen los listeners de clic para tus botones “establecimientos”, “servicios” y “productos”. Los has colocado después de la declaración de retorno en el método onCreateOptionsMenu, lo que los convierte en código inaccesible. Para solucionarlo, puedes mover esas líneas de código arriba de la declaración de retorno o colocarlas en un método separado que llames desde el final del método onCreate.

Comments are closed.