Class 清单中的集成:应用程序已停止

Class integration in Manifest: application stopped

我的 manifest.xml 引发了“.RoleActivity”的错误。但是如果我用其他人替换我的“.roleActivity”进行检查,他们都可以。这是我的 manifest.xml

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

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

   </application>
  </manifest>

这是我的 RoleActivity。试图在这里写开关盒。

public class RoleActivity extends AppCompatActivity {

    private Button btnPatient;
    private Button btnDoctor;
    private Button btnGuest;
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.log_in_role);


    btnPatient = (Button) findViewById(R.id.btpatient);
    btnDoctor = (Button) findViewById(R.id.btdoctor);
    btnGuest = (Button) findViewById(R.id.btguest);

    btnPatient.setOnClickListener((View.OnClickListener) this);
    btnDoctor.setOnClickListener((View.OnClickListener) this);
    btnGuest.setOnClickListener((View.OnClickListener) this);
    }

    public void onClick(View v) {
    switch (v.getId()) {
        case  R.id.btdoctor: {

            Intent i = new Intent(getApplicationContext(), DoctorLoginActivity.class);
            startActivity(i);
            break;
        }

        case R.id.btpatient: {

            Intent i = new Intent(getApplicationContext(), PatientLoginActivity.class);
            startActivity(i);
            break;
        }

    }
}

}

您的 activity 没有实施 View.OnClickListener。除非您在 activity 上实施 View.OnClickListener,否则您不能将 activity 转换为 OnClickListener。这就是为什么你会收到错误,可能是 ClassCastException

 btnPatient.setOnClickListener((View.OnClickListener) this);
    btnDoctor.setOnClickListener((View.OnClickListener) this);
    btnGuest.setOnClickListener((View.OnClickListener) this);

在您的 activity 上实施 View.OnClickListener。更改

public class RoleActivity extends AppCompatActivity

public class RoleActivity extends AppCompatActivity implements View.OnClickListener 

然后你可以删除那个转换

btnPatient.setOnClickListener(this);
btnDoctor.setOnClickListener(this);
btnGuest.setOnClickListener(this);

如果您没有在 activity 上实现 View.OnClickListener,您可以将点击侦听器添加为匿名内部 class 以处理对视图的点击

在 ReActivity 中实现 onClickListener class 并将代码更改为

btnPatient.setOnClickListener( this);
btnDoctor.setOnClickListener(this);
btnGuest.setOnClickListener(this);