JansenN
JansenN

Reputation: 33

Trying to declare class in androidmanifest

I'm trying to declare my activity in my AndroidManifest.xml. It doesn't work because it says com.vakantielanden.quizapp.QuizResultaatFrankrijk is not public

When I try to make my class public it gives the following error: Class 'QuizResultaatFrankrijk' is public, should be declared in a file name 'QuizResultaatFrankrijk.java'

So what should I do now to fix this. Thanks in advance!

This is my AndroidManifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.vakantielanden.quizapp">
<uses-permission android:name="android.permission.INTERNET" />
<application
    android:allowBackup="true"
    android:icon="@mipmap/applogo"
    android:label="VakantielandenQuiz"
    android:roundIcon="@mipmap/applogo"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".HomeActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".KeuzeActivity"></activity>
    <activity android:name=".QuizActivityFrankrijk"></activity>
    <activity android:name=".QuizActivitySpanje"></activity>
    <activity android:name=".QuizActivityItalie"></activity>
    <activity android:name=".QuizActivityDuitsland"></activity>
    <activity android:name=".QuizActivityNoorwegen"></activity>
    <activity android:name=".QuizActivityZweden"></activity>
    <activity android:name=".HighscoreActivity"></activity>

    <meta-data android:name="com.google.android.gms.games.APP_ID"
        android:value="@string/app_id" />
    <meta-data android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version"/>

</application>


</manifest>

And this is the java code in question:

class QuizResultaatFrankrijk extends AppCompatActivity {

TextView mFinalScoreFrankrijk;
Button mHomeButtonFrankrijk;

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

    mFinalScoreFrankrijk = (TextView)findViewById(R.id.scoreresultaat);
    mHomeButtonFrankrijk = (Button)findViewById(R.id.homepageknop);


    Bundle bundle = getIntent().getExtras();
    int score = bundle.getInt("finalScoreFrankrijk");

    mFinalScoreFrankrijk.setText( + score + "");


    mHomeButtonFrankrijk.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            startActivity(new Intent(QuizResultaatFrankrijk.this, 
HomeActivity.class));
            QuizResultaatFrankrijk.this.finish();
        }
    });

}
} 

Upvotes: 0

Views: 619

Answers (2)

Alirio Mendes
Alirio Mendes

Reputation: 819

Copy this part of the code:

TextView mFinalScoreFrankrijk;
Button mHomeButtonFrankrijk;

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

    mFinalScoreFrankrijk = (TextView)findViewById(R.id.scoreresultaat);
    mHomeButtonFrankrijk = (Button)findViewById(R.id.homepageknop);


    Bundle bundle = getIntent().getExtras();
    int score = bundle.getInt("finalScoreFrankrijk");

    mFinalScoreFrankrijk.setText( + score + "");


    mHomeButtonFrankrijk.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            startActivity(new Intent(QuizResultaatFrankrijk.this, 
HomeActivity.class));
            QuizResultaatFrankrijk.this.finish();
        }
    });

}

Delete the file, create it again and paste your code again.

Upvotes: 0

Xenolion
Xenolion

Reputation: 12717

When you want to make an Activity class, that class should be public also the name of the file should resemble the Activity name.

So you might have changed the Activity name but you have not changed the file which that activity belongs So Examples:
If activity is MainActivity then file name is MainActivity.java
If activity name is QuizResultaatFrankrijk then the file name should be QuizResultaatFrankrijk.java
Check your code and solve it!

Upvotes: 1

Related Questions