在成员构造函数中引用“this”

时间:2012-02-17 12:43:54

标签: java android this android-context

public abstract class AndroidTextAdvGame extends Activity implements Game {

Game game;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    game = this;

    rightLinksListener = new View.OnClickListener() {           
        @Override
        public void onClick(View v) {
                    setScreen( new BookQuestGameScreen(game) );
        }

    };
}

无论如何我可以引用'this'(我定义的类)

在新View.OnClickListener

目前的解决方法是我创建的游戏成员,并在onCreate中分配game = this,然后在新View.OnClickListener中使用游戏

2 个答案:

答案 0 :(得分:2)

如果您定义的课程名为 AndroidTextAdvGame ,那么您可以使用

来引用其“this”
AndroidTextAdvGame.this

答案 1 :(得分:1)

是:您可以将外部类实例称为AndroidTextAdvGame.this。例如:

new BookQuestGameScreen(AndroidTextAdvGame.this)

(我承认,这看起来有点奇怪 - 但你已经习惯了。)