You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android开发求助:MainActivity的Intent无法启动SignupActivity

Android Studio中SignupActivity跳转失败问题

我是Android Studio新手,已经花了近一小时排查问题:我的MainActivity里有两个按钮点击事件,都是通过Intent跳转对应Activity,但newUser按钮无法启动SignupActivity。奇怪的是,把这段代码里的目标Activity改成SplashActivity就能正常运行,所以我怀疑问题出在SignupActivity或者它对应的xml文件中。以下是我的项目文件:

MainActivity.java

package com.example.neurow;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    // Declare buttons
    Button existingUser, newUser;

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

        // Hide Action bar and Status bar
        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getSupportActionBar().hide();

        setContentView(R.layout.activity_main);

        // Define buttons
        existingUser = findViewById(R.id.btnExistingUser);
        newUser = findViewById(R.id.btnNewUser);

        // Existing user button listener
        existingUser.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View  view) {
                Intent i = new Intent(MainActivity.this, SignupActivity.class);
                startActivity(i);
                overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
            }
        });

        // New user button listener
        newUser.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent i = new Intent(MainActivity.this, SignupActivity.class);
                startActivity(i);
                overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
            }
        });
    }
}

SignupActivity.java

package com.example.neurow;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;

public class SignupActivity extends AppCompatActivity {

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

        // Hide Action bar and Status bar
        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getSupportActionBar().hide();

        setContentView(R.layout.activity_login);
    }

    // Launch MainActivity when back button is pressed
    public void launchMain (View v) {
        // Launch Log-in activity
        Intent i = new Intent(this, MainActivity.class);
        startActivity(i);
        overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right);
    }
}

LoginActivity.java

package com.example.neurow;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;

public class LoginActivity extends AppCompatActivity {

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

        // Hide Action bar and Status bar
        this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getSupportActionBar().hide();

        setContentView(R.layout.activity_login);
    }

    // Launch MainActivity when back button is pressed
    public void launchMain (View v) {
        // Launch Log-in activity
        Intent i = new Intent(this, MainActivity.class);
        startActivity(i);
        overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right);
    }
}

activity_signup.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/gradient_background"
    tools:context=".SignupActivity">

    <!-- Welcome Back Text -->
    <TextView
        android:id="@+id/txtWelcome"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="330dp"
        android:fontFamily="sans-serif-light"
        android:text="Create User"
        android:textColor="@color/white"
        android:textSize="60sp"
        android:textStyle="normal"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <!-- User ID Field -->
    <EditText
        android:id="@+id/edtTxtPromptUserID"
        android:layout_width="332dp"
        android:layout_height="69dp"
        android:layout_marginTop="468dp"
        android:backgroundTint="@color/white"
        android:hint="@string/prompt_userID"
        android:inputType="text"
        android:selectAllOnFocus="true"
        android:textColor="@color/white"
        android:textColorHint="@color/white"
        android:textSize="30dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.497"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <!-- Password Field -->
    <EditText
        android:id="@+id/edtTxtPromptPassword"
        android:layout_width="332dp"
        android:layout_height="69dp"
        android:layout_marginTop="8dp"
        android:backgroundTint="@color/white"
        android:hint="@string/prompt_password"
        android:inputType="textPassword"
        android:selectAllOnFocus="true"
        android:textColor="@color/white"
        android:textColorHint="@color/white"
        android:textSize="30dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.497"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/edtTxtPromptUserID" />


    <!-- Register Button -->
    <Button
        android:id="@+id/btnRegister"
        android:layout_width="242dp"
        android:layout_height="83dp"
        android:layout_marginTop="40dp"
        android:backgroundTint="#00A36C"
        android:text="Register"
        android:textSize="30sp"
        android:textColor="@color/white"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/edtTxtPromptPassword" />

    <!-- Back button -->
    <Button
        android:id="@+id/btnBack2"
        android:layout_width="134dp"
        android:layout_height="57dp"
        android:layout_marginTop="24dp"
        android:onClick="launchMain"
        android:text="Back"
        android:textColor="@color/white"
        android:textSize="20dp"
        android:backgroundTint="@color/purple_200"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/btnRegister" />


</androidx.constraintlayout.widget.ConstraintLayout>

我已经检查了所有文件的命名是否唯一且一致,但还是没找到问题原因,希望能得到帮助。


内容的提问来源于stack exchange,提问作者Pyth0n

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 15:35:24