简体   繁体   English

设置自定义事件监听器

[英]Setting custom event listeners

I'm trying to set a custom event listener but the flag isn't getting triggered. 我正在尝试设置一个自定义事件侦听器,但未触发该标志。 Here's the relevant code: 以下是相关代码:

public interface onPlayerSetUpEventListener {
    public void onPlayerSetUp();
}

private onPlayerSetUpEventListener mOnPlayerSetUpEventListener;

public void setOnPlayerSetUpEventListener(onPlayerSetUpEventListener eventListener) {
    mOnPlayerSetUpEventListener = eventListener;
}

public void playerSetUp() {
    if(mOnPlayerSetUpEventListener != null){
        mOnPlayerSetUpEventListener.onPlayerSetUp();
    }
} 

/* The listener is set here */

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    initializeHotels();
    FIRST_TURN = true;
    super.onCreate(savedInstanceState);
    clearOldBoard();
    setContentView(R.layout.activity_game_board);
    setUpBoardGUI();
    setUpPlayers();

    setOnPlayerSetUpEventListener(new onPlayerSetUpEventListener() {
        @Override
        public void onPlayerSetUp(){
            prepForFirstTurn();
        }
    });

/* playerSetUp() should trigger the event */

public void setUpPlayers(){
    <!-- Here we set up all the players and prep them for the start of game -->
    playerSetUp();
}

I'm very new to event handling here so an extra pair of eyes to help me identify what happened and why the event isn't getting executed would be great! 我对事件处理非常陌生,因此,多一双眼睛可以帮助我识别发生了什么以及为什么事件未得到执行将是很棒的!

Is it because it's trying to handle the event inside of onCreate() ? 是否因为它试图处理onCreate()内部的事件?

Thanks for you help in advance! 感谢您的帮助!

JRad The Bad 坏人

You are using setUpPlayers(); 您正在使用setUpPlayers(); before you set the listener on the next line. 在下一行设置监听器之前。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM