gpt4 book ai didi

java - 调用 Intent 启动 Activity 时应用程序崩溃

转载 作者:行者123 更新时间:2023-12-02 11:47:58 25 4
gpt4 key购买 nike

我是使用 Android Studio 创建应用程序的初学者。

在我的主页/ActivityMain 上,我希望放置一个 textView,单击该 TextView 后,将启动到另一个relativelayout Activity 中。

我尝试使用 Intent 来执行此操作,但单击文本框时应用程序崩溃。请注意,对于所有代码,我认为不相关的语句已被删除(导入、 bundle )下面是我的 Activity_main.xml 代码:

<ImageView
android:id="@+id/imageView2"
android:layout_width="match_parent"
android:layout_height="256dp"
android:layout_margin="16dp" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Organelles" />

<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/membrane"
android:text="Cell Membrane"
android:onClick="explainCellMembrane" />

下面是我的 MainActivity.java 代码,其中包含包含我的 Intent 的代码:

public class MainActivity extends AppCompatActivity {

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

public void explainCellMembrane(View view) {
Intent myIntent = new Intent(MainActivity.this, MembraneActivity.class);
MainActivity.this.startActivity(myIntent);
}
}

下面是 Intent 启动的类(MembraneActivity)的代码:

    package com.example.android.cellularbiology;

public class MembraneActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.activity_membrane);
}

}

最后是我的自定义 Java 类布局的代码:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Membrane Explanation Page"/>

</LinearLayout>

在AndroidStudio中没有错误(红色下划线)当应用程序崩溃时,它不会显示错误,只是说它已停止。

如何确定我的 Intent ?还是应该使用其他方法?

感谢您的帮助。

Android list :

    <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.cellularbiology">

<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/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

</manifest>

日志:

    01/03 00:06:12: Launching app
No apk changes detected since last installation, skipping installation of /Users/FideronTSANG/Desktop/CellularBiology/app/build/outputs/apk/app-debug.apk
$ adb shell am force-stop com.example.android.cellularbiology
$ adb shell am start -n "com.example.android.cellularbiology/com.example.android.cellularbiology.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Client not ready yet..Waiting for process to come online
Waiting for process to come online
Connected to process 24150 on device samsung-sm_c9000-b9dec0e1
Application terminated.

结论:谢谢大家的回答和帮助菜鸟!你完全拯救了我的项目!希望您度过愉快的一天:)

添加后 Intent 生效

<activity
android:name = ".MembraneActivity">
</activity>

到我的 Android list 。

我还使用了

提供的改进 Intent
public void explainCellMembrane(View view) {

startActivity(new Intent(MainActivity.this, MembraneActivity.class));

}

最佳答案

首先将您的 explainCellMembrane 方法替换为:

public void explainCellMembrane(View view) {

startActivity(new Intent(MainActivity.this, MembraneActivity.class));

}

第二,尝试清理和重建您的项目,然后在问题中分享您的logCat

编辑:检查您的 logCat 后,我发现错误不在您的 logCat 中,而是在设备中,因此请尝试删除模拟器或移动设备中的应用程序,然后重新安装通过 Android-Studio,这对我也有效,因为它经常随机发生。

关于java - 调用 Intent 启动 Activity 时应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48064003/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com