android - 需要帮助找出为什么我的应用程序在单击按钮后不离开主屏幕(这应该将我带到第二个 Activity 屏幕)

标签 android button android-intent android-activity

我有一个主要 Activity ,其中用户显示了 3 个 ListView 和 3 个按钮。当用户单击三个按钮中的两个时,我希望将用户发送到另一个屏幕(另一种布局)。我已经创建了另外两个布局和另外两个类。我不确定为什么这不起作用。我的应用程序没有报告错误,没有警告,而且我发现我无法逐步执行我的代码,因为我的调试器不工作。

我有一个 OnClickListner(我目前只是一次测试一个按钮来解决问题),它链接到主 Activity layout.xml android:OnClick 中的按钮。我在主要 Activity 中放置了一个 Intent,该 Activity (根据多个来源和 YouTube 教程)已正确设置,并且应该将用户重定向到的新 Activity 链接到适当的布局。当我运行应用程序时,按钮点击注册(我知道这一点,因为当按下按钮时我有一个声音效果)但没有其他事情发生。此外,我的所有 Activity 都存在于 AndroidManifest.xml 文件中。所有的 Activity 文件都在同一文件夹级别,所有布局都在 res/layout 下

public class MainActivity extends AppCompatActivity {
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // instantiate button
        Button btnClicked = (Button)findViewById(R.id.goal);
final MediaPlayer mp = MediaPlayer.create(this, R.raw.click);
btnClicked.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                startActivity(new Intent(MainActivity.this, 
ChangeGoal.class));
mp.start();
            }
        });

// method called when set goal button is clicked
    public void setGoal(View view)

    {
        // intent to send user from main activity to the change goal 
activity
        Intent setGoal = new Intent(this, ChangeGoal.class);
        startActivity(setGoal);
    }
}

public class ChangeGoal extends AppCompatActivity {
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_change_goal);  // connect 
class to the other layout
    }
}

//button from activity_main.xml
<Button
            android:id="@+id/goal"
            android:layout_width="200dp"
            android:layout_height="200dp"
            android:text="@string/Set"
            android:onClick="setGoal"
            android:textSize="20sp"
            android:textColor="#000000"/>`

同样,我希望从主 Activity 中单击按钮将用户发送到一个新 Activity ,他们需要在该 Activity 中进行选择,然后返回到主 Activity 。到目前为止,按钮点击注册(我可以听到它,因为我已经在按钮点击时包含了一些音频)但是应用程序什么都不做,我留在同一个屏幕上并且可以一次又一次地按下按钮。

最佳答案

在您的 Activity 布局中,您已在 Button 上声明:

   android:onClick="setGoal"

然后,在代码中,您将 onClickListener 附加到同一个 Button。这是错误的。做一个或另一个,但不能同时做。

关于android - 需要帮助找出为什么我的应用程序在单击按钮后不离开主屏幕(这应该将我带到第二个 Activity 屏幕),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55996995/

相关文章:

Android APK 在正确的目录中没有 .so

java - 如何使用非通用参数调用方法(反射)?

android - FLAG_ACTIVITY_REORDER_TO_TOP 导致 RuntimeException 或旋转黑屏

android - 将新的 apk 上传到 Production Failed

Android 媒体记录器启动失败

iOS 按钮只显示一行文本

button - JBoss Seam 使用按钮取消请求

java - 尝试 thread.sleep 代码的一部分,但它会影响整个事情

使用 p7s 数字签名的 Android Intent 来签署电子邮件

安卓 : Can I use this intent from a 3rd party application?