InflateException для Android Studio MainActivity - PullRequest
0 голосов
/ 04 мая 2020

Возникла проблема при запуске, когда Android Studio выдает исключение Inflate, которое я не могу запустить. Я пытался посмотреть на решения из: Здесь . Однако я не мог получить эти решения, чтобы решить мою проблему.

Цель приложения - поиск произвольного времени в другой системе. Это делается с двумя разными страницами. На первой странице вы вводите текущее время в какой-то системе безопасности, компьютере и т. Д. c, и оно сравнивается с текущим в реальном времени. Будет создано смещение (насколько оно быстрое или медленное). На второй странице вы можете сделать поиск по времени. Этот поиск времени работает, зная, когда событие произошло в реальном времени, и применяя это значение смещения, чтобы увидеть, где компьютер или система безопасности считают, что это произошло. Эти две страницы реализованы с использованием фрагментов, и я передаю смещение от одной страницы к другой, используя функциональные возможности Intent.

Сообщение об ошибке:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.penguin.chronos, PID: 22776
java.lang.RuntimeException: Unable to start activity 
ComponentInfo{com.penguin.chronos/com.penguin.chronos.MainActivity}: android.view.InflateException: 
Binary XML file line #21 in com.penguin.chronos:layout/activity_main: Binary XML file line #21 in 
com.penguin.chronos:layout/activity_main: Error inflating class fragment
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3344)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3488)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
    at 
android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2049)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:216)
    at android.ap
E/AndroidRuntime:     at android.view.LayoutInflater.inflate(LayoutInflater.java:680)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:532)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:479)
    at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:555)
    at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:161)
    at com.penguin.chronos.MainActivity.onCreate(MainActivity.java:18)
    at android.app.Activity.performCreate(Activity.java:7930)
    at android.app.Activity.performCreate(Activity.java:7919)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3319)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3488)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
    at 
android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
    at android.app.servertransac

Это моя MainActivity XML:

<androidx.constraintlayout.widget.ConstraintLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="?attr/actionBarSize">

<com.google.android.material.bottomnavigation.BottomNavigationView
    android:id="@+id/nav_view"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginStart="0dp"
    android:layout_marginEnd="0dp"
    android:background="?android:attr/windowBackground"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:menu="@menu/bottom_nav_menu" />

<fragment      <!--***Line 21***-->
    android:id="@+id/nav_host_fragment"
    android:name="androidx.navigation.fragment.NavHostFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:defaultNavHost="true"
    app:layout_constraintBottom_toTopOf="@id/nav_view"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:navGraph="@navigation/mobile_navigation" />

</androidx.constraintlayout.widget.ConstraintLayout>

Вот Java позади MainActivity:

public class MainActivity extends AppCompatActivity 
{
    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        BottomNavigationView navView = findViewById(R.id.nav_view);
        // Passing each menu ID as a set of Ids because each
        // menu should be considered as top level destinations.
        AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
            R.id.navigation_home, R.id.navigation_dashboard)
            .build();
        NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
        NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
        NavigationUI.setupWithNavController(navView, navController);
    }
}

Обычно я не включал бы столько кода в вопрос SO, так как ни одна из моих попыток не приблизилась к поиску причины root, я не уверен в соответствующей информации по этому вопросу. В настоящее время приложение взрывается, как только вы нажимаете «выполнить», моя цель - устранить эту ошибку, чтобы приложение работало. Другие страницы реализованы с использованием фрагментов, которые я могу опубликовать по запросу.

...