Android Studio模拟器中App启动即闪退,无可见错误求助
应用启动闪退问题排查
我在Pixel 4 API 31模拟器上启动应用时,应用刚启动就闪退,无法进入初始界面,且未发现可见错误。以下是相关代码:
MainActivity代码
import android.os.Bundle import android.widget.TextView import com.google.android.material.bottomnavigation.BottomNavigationView import androidx.appcompat.app.AppCompatActivity import androidx.navigation.findNavController import androidx.navigation.ui.AppBarConfiguration import androidx.navigation.ui.setupActionBarWithNavController import androidx.navigation.ui.setupWithNavController import com.example.ecomap00.databinding.ActivityMainBinding class MainActivity : AppCompatActivity() { private lateinit var textView: TextView private val onNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener { item -> when (item.itemId) { R.id.nav_home -> { textView.setText("Home") return@OnNavigationItemSelectedListener true } R.id.nav_search -> { textView.setText("Search") return@OnNavigationItemSelectedListener true } R.id.nav_add_post -> { textView.setText("Add post") return@OnNavigationItemSelectedListener true } R.id.nav_notifications -> { textView.setText("Notifications") return@OnNavigationItemSelectedListener true } R.id.nav_profile -> { textView.setText("Profile") return@OnNavigationItemSelectedListener true } } false } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) val navView: BottomNavigationView = findViewById(R.id.nav_view) textView = findViewById(R.id.message) navView.setOnNavigationItemSelectedListener(onNavigationItemSelectedListener) } }
activity_main.xml代码
<RelativeLayout 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"> <TextView android:id="@+id/message" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginStart="16dp" android:layout_marginTop="16dp" android:layout_marginLeft="16dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent" android:text="Hello" android:layout_centerVertical="true" android:textAlignment="center" android:textSize="30dp"/> <com.google.android.material.bottomnavigation.BottomNavigationView android:id="@+id/nav_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@android:color/white" android:layout_alignParentBottom="true" app:menu="@menu/bottom_nav_menu" app:labelVisibilityMode="unlabeled" /> </RelativeLayout>
bottom_nav_menu.xml代码
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/nav_home" android:icon="@drawable/home" android:title="" /> <item android:id="@+id/nav_search" android:icon="@drawable/search" android:title="" /> <item android:id="@+id/nav_add_post" android:icon="@drawable/add" android:title="" /> <item android:id="@+id/nav_notifications" android:icon="@drawable/heart" android:title="" /> <item android:id="@+id/nav_profile" android:icon="@drawable/profile_icon" android:title="" /> </menu>
我还有几个之后会用到的空白xml文件,不确定是否是问题原因,希望有人能帮忙排查问题。
编辑补充:感谢大家,问题已解决,原因是MainActivity的onCreate方法中缺少setContentView()方法。
内容的提问来源于stack exchange,提问作者yves
相关产品推荐
相关产品推荐

