错误:MainActivity不是封闭类

时间:2017-01-15 16:44:00

标签: android android-intent android-activity click

我创建了一个个人组件视图,当我们点击它时,会启动另一个活动。有我的清单。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="fr.freshkamekentrainement.skrt">
<application
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">
    <activity android:name=".Splash"
        android:theme="@style/Splash"
        android:screenOrientation="portrait"
        android:configChanges="orientation">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".MainActivity"
        android:screenOrientation="portrait"
        android:configChanges="orientation"/>
    <activity android:name=".niveaux.LilUziVert_GrowUp"
        android:screenOrientation="portrait"
        android:configChanges="orientation"/>
</application></manifest>

有我的意图

public class Niveauview extends RelativeLayout {
Intent intentNiveau;

//Code

@Override
public void onFinishInflate() {
    super.onFinishInflate();

    setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View view) {
            intentNiveau = new Intent(MainActivity.this,LilUziVert_GrowUp.class);
            startActivity(intentNiveau);
        }
    });
}}

我收到错误:

  

MainActity不是封闭类

请注意NiveauViewMainActivity不在同一个包中(但它们是公开的)。问题出在哪里?当我尝试new Intent(this,LilUziVert_GrowUp.class);时,我也有错误。

1 个答案:

答案 0 :(得分:0)

如果你在Foo的内部类中,你只能访问Foo.this。否则,您需要在Foo的实例中传递。对于View,每个视图都有一个Context实例,可以通过调用getContext()获得。所以你需要拨打intentNiveau = new Intent(getContext(),LilUziVert_GrowUp.class);