Java 在Android应用程序(Android Studio)上更改为其他活动的两个按钮

Java 在Android应用程序(Android Studio)上更改为其他活动的两个按钮,java,android,xml,Java,Android,Xml,我正在学习如何使用Android Studio创建应用程序,我不能用2个按钮切换到其他活动。例如,我有一个按钮contact,它允许我进入contact\u list类,还有一个按钮msg,它允许我进入message\u enregistre类 问题:联系人按钮工作,但消息按钮不工作。当我按下msg按钮时,应用程序返回到主活动。我认为我的AndroidManifest.xml很好 但我不知道为什么味精按钮不起作用。你能帮我吗 parametres.java文件 import android.ap

我正在学习如何使用Android Studio创建应用程序,我不能用2个按钮切换到其他活动。例如,我有一个按钮contact,它允许我进入contact\u list类,还有一个按钮msg,它允许我进入message\u enregistre类

问题:联系人按钮工作,但消息按钮不工作。当我按下msg按钮时,应用程序返回到主活动。我认为我的AndroidManifest.xml很好

但我不知道为什么味精按钮不起作用。你能帮我吗

parametres.java文件

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;


public class parametres extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.parametres);
    final Button contact =(Button)findViewById(R.id.button3);
    contact.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            Intent act1 = new Intent(view.getContext(), contact_list.class);
            startActivity(act1);

        }
    });

    final Button msg =(Button)findViewById(R.id.button4);
    msg.setOnClickListener(new View.OnClickListener()
    {

        @Override
        public void onClick(View view2)
        {
            Intent act2 = new Intent(view2.getContext(), message_enregistre.class);
            startActivity(act2);

        }
    });
}

}
以及AndroidManifest文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.baptiste.saveme">
<uses-permission android:name="android.permission.READ_CONTACTS" />
<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

    <activity
        android:name=".parametres"
        android:label="@string/app_name">
    </activity>

    <activity
        android:name=".contact_list"
        android:label="@string/app_name">
    </activity>
    <activity
        android:name=".message_enregistre"
        android:label="@string/app_name">
    </activity>
</application>


非常感谢

您正在设置多个OnClickListeners(),这可能是问题的根源。我建议您将代码更改为

public class parametres extends Activity implements OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.parametres);
    final Button contact =(Button)findViewById(R.id.button3);
    contact.setOnClickListener(this);

    final Button msg =(Button)findViewById(R.id.button4);
    msg.setOnClickListener(this);
}

 @Override
 public void onClick(view v) {
     Intent i;
     switch(v.getId()){
        case R.id.button3:
        i  = new Intent(parametres.this, contact_list.class);
        startActivity(i);
        break;
        case R.id.button4:
         i = new Intent(parametres.this, message_enregistre.class);
        startActivity(i);
        break;
     }

 }
}

请发布您的消息\u enregistre classcheck
setContentView(R.layout.*)在你的
消息\u eRegistre
类中,我想你已经给出了
设置内容视图(R.layout.activity\u main)
inside
message\u enregistre
类。我的这部分代码很好,谢谢:)我不确定这是问题所在,为View创建任何新实例是否合法。OnClickListener(如您所需)不正确,但它可以正常工作。好的,我今天检查一下。谢谢您的回答。函数setOnClickListener不接受参数“this”。你有解决办法吗?谢谢。好的,我找到了解决办法:)谢谢你的帮助:)