W navigation.java błędy: nawigacja jest już zdefiniowana w pliku jednostka kompilacji i nie można znaleźć metody symboli findNavController(Navigation ,int)
Navigation.java
package com.example.bcuilders;
import android.os.Bundle;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.snackbar.Snackbar;
import android.view.View;
import androidx.navigation.NavController;
import androidx.navigation.Navigation;
import androidx.navigation.ui.AppBarConfiguration;
import androidx.navigation.ui.NavigationUI;
import com.google.android.material.navigation.NavigationView;
import androidx.drawerlayout.widget.DrawerLayout;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import android.view.Menu;
public class Navigation extends AppCompatActivity {
private AppBarConfiguration mAppBarConfiguration;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_navigation);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
DrawerLayout drawer = findViewById(R.id.drawer_layout);
NavigationView navigationView = findViewById(R.id.nav_view);
// Passing each menu ID as a set of Ids because each
// menu should be considered as top level destinations.
mAppBarConfiguration = new AppBarConfiguration.Builder(
R.id.nav_home, R.id.nav_gallery, R.id.nav_slideshow,
R.id.nav_tools, R.id.nav_share, R.id.nav_send)
.setDrawerLayout(drawer)
.build();
NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
NavigationUI.setupActionBarWithNavController(this, navController, mAppBarConfiguration);
NavigationUI.setupWithNavController(navigationView, navController);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.navigation, menu);
return true;
}
@Override
public boolean onSupportNavigateUp() {
NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
return NavigationUI.navigateUp(navController, mAppBarConfiguration)
|| super.onSupportNavigateUp();
}
}
Oraz w błędzie mainActivity.java: nie można znaleźć intencji klasy symbolu mainActivity.java
package com.example.bcuilders;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void buttonClick(View view)
{
EditText et1= (EditText) findViewById(R.id.MyEmail);
EditText et2= (EditText) findViewById(R.id.MyPass);
String email=et1.getText().toString();
String pass=et2.getText().toString();
String oemail="admin";
String opass="admin";
if (email.equals(oemail) && pass.equals(opass)){
Intent intent = new intent(this, Navigation.class);
startActivity(intent);
}
else{
Toast toast = Toast.makeText(this, "Invalid Email/Pass",Toast.LENGTH_LONG);
toast.show();
}
}
}
Błędy: nawigacja jest już zdefiniowana w jednostce kompilacji i nie można znaleźć metody symbolu findNavController (Navigation, int) w Navigation.java
1 odpowiedź
Wypróbuj poniższy kod:
1) W błędzie mainActivity.java: nie można znaleźć celu klasy symbolu mainActivity.java
Zamiast tego
Intent intent = new intent(this, Navigation.class);
Użyj tego
Intent intent = new Intent(this, Navigation.class);
Ponieważ używasz zamiaru małych liter, zgłasza ten błąd.
2) W navigation.java, błędy: nawigacja jest już zdefiniowana w jednostce kompilacji i nie można znaleźć metody symbolu findNavController (Navigation, int)
Aby rozwiązać ten błąd, zmień nazwę swojego navigation.java
na inną niż nawigacja. W twoim przypadku próbuje znaleźć findNavController(Navigation, int)
w twojej klasie navigation.java
, której tam nie ma.
Mam nadzieję, że to rozwiązuje twoje błędy !!!
Podobne pytania
Powiązane pytania
Nowe pytania
java
Java to język programowania wysokiego poziomu. Użyj tego tagu, jeśli masz problemy z używaniem lub zrozumieniem samego języka. Ten tag jest rzadko używany samodzielnie i jest najczęściej używany w połączeniu z [spring], [spring-boot], [jakarta-ee], [android], [javafx], [hadoop], [gradle] i [maven].