我正在尝试从非活动类开始一项新活动。
从主菜单中:
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 Menu extends Activity {
Button start, options;
GameLoop Game = new GameLoop();
@Override
public void onCreate(Bundle mainStart) {
super.onCreate(mainStart);
setContentView(R.layout.menu);
start = (Button) findViewById(R.id.bStart);
options = (Button) findViewById(R.id.bOptions);
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent openStart = new Intent(Menu.this, Game.class);
startActivity(openStart);
}
});
options.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Context mContext = null; //Error called for mContext to be initialized so just tried setting to null. This is most likely the error cause it would make more sense for it to be equal to "getContext()" or something like that
Game.Start(mContext);//Here
}
});
}
}
我正在尝试从Game.Start()方法中打开一个活动。
import android.content.Context;
import android.content.Intent;
public class GameLoop extends Menu{
boolean hello = false;
public void Start(Context sContext){
Intent openOptions = new Intent(sContext, Options.class);
startActivity(openOptions);
}
}
我不确定使用上下文是否是正确的方法,但我认为值得一试。我是java和android的新手,所以我几乎迷失在下一步去哪里。任何有关方向的帮助都会受到人们的普遍赞赏。
答案 0 :(得分:0)
Activity扩展了Context,因此您可以在Activity内部使用this
。
Game.Start(Menu.this);
我使用Menu.this
因为你在内部匿名类(View.OnClickListener)中,this
引用了这个内部类。
答案 1 :(得分:0)
您是否将新活动添加到androidmanifest.xml?