2017-07-26 124 views
0

我想在我的活动监听事件,而Android工作室对我说,该方法onEventMainThread从未使用过,显然它永远不会在它里面...的Android EventBus - onEventMainThread从未使用过

我不知道为什么,因为我注册的活动上EventBus执行以下操作:

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.telegram_conversations_activity); 
    EventBus.getDefault().registerSticky(this); 
    //... 
} 

public void onEventMainThread(TdApi.UpdateFile file) { 
    Toast.makeText(TelegramConversationsActivity.this,"ey",Toast.LENGTH_SHORT).show(); 
} 

我在做什么错?

回答

0

尝试使用此方法而不是将其调用onEventMainThread。

@Subscribe(粘=真,threadMode = ThreadMode.MAIN)

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(Bundle savedInstanceState); 
    EventBus.getDefault().register(this); 
} 

// UI updates must run on MainThread 
@Subscribe(sticky = true, threadMode = ThreadMode.MAIN) 
public void onEvent(TdApi.UpdateFile file) { 
    Toast.makeText(TelegramConversationsActivity.this,"ey",Toast.LENGTH_SHORT).show(); 
} 

@Override 
public void onStop() { 
    EventBus.getDefault().unregister(this);  
    super.onStop(); 
} 
相关问题