Основная деятельность не будет запущена в проекте Kotlin

#android #kotlin #android-activity #launch

Вопрос:

У меня есть два вида деятельности: викторины и основная ДеятЕльность2. Когда я настраиваю вопросы в фильтре намерений манифеста, приложение открывается и запускается нормально. Однако, когда я настраиваю свое приложение для открытия с помощью MainActivity2, оно вообще не инициализируется. Я просмотрел файлы бок о бок и не могу найти в них разницы, чтобы понять, почему один запустится, а другой нет.

Я совершенно новичок в Котлине, поэтому я уверен, что мне не хватает чего-то очень очевидного. Мы будем очень признательны за любую помощь.

Спасибо.

Вот мой манифест

 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.crazywkids.officequiz">

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/Theme.OfficeQuiz">

    <activity
        android:name=".QuizQuestions"
        android:exported="true"
        />

    <activity
        android:name=".MainActivity2"
        android:exported="true"
        android:theme="@style/NoActionBarTheme"
        android:windowSoftInputMode="adjustResize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
 

Вот основная активность2

     package com.crazywkids.officequiz

import android.content.Intent
import android.os.Bundle
import android.widget.Button
import androidx.appcompat.app.AppCompatActivity

class MainActivity2 : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main2)

        val beginBtn = findViewById<Button>(R.id.beginBtn)

        beginBtn.setOnClickListener {
            val intent = Intent(this, QuizQuestions::class.java)
            startActivity(intent)
        }


    }
}
 

Вот вопросы-викторины

     package com.crazywkids.officequiz

import android.os.Bundle
import android.util.Log
import androidx.appcompat.app.AppCompatActivity

class QuizQuestions : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_quiz_questions)

        val question=Constants.getQuestions()
        Log.i("Question Size", "${question.size}")
    }
}
 

Комментарии:

1. какую ошибку вы получили в logcat?

2. В журнале появится трассировка стека, которая сообщит вам, какая строка кода вызвала сбой и почему. Я предполагаю, что в макете, который вы установили в MainActivity2, нет кнопки с идентификатором ”beginBtn” .

3. Спасибо. Я посмотрел на logcat (на который я раньше не думал смотреть) и обнаружил на своем изображении исключение InflateException. Мне просто нужно было переместить свое изображение в папку для рисования на уровне проекта, и оно загрузилось нормально. Спасибо вам обоим за вашу помощь!