我创建了一个个人组件视图,当我们点击它时,会启动另一个活动。有我的清单。
<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不是封闭类
请注意NiveauView
和MainActivity
不在同一个包中(但它们是公开的)。问题出在哪里?当我尝试new Intent(this,LilUziVert_GrowUp.class);
时,我也有错误。
答案 0 :(得分:0)
如果你在Foo的内部类中,你只能访问Foo.this。否则,您需要在Foo的实例中传递。对于View,每个视图都有一个Context实例,可以通过调用getContext()获得。所以你需要拨打intentNiveau = new Intent(getContext(),LilUziVert_GrowUp.class);