我试图在游戏中的TextView中显示分数。比赛期间得分增加,但我无法在onCreate()方法中做到这一点。我需要使用适配器或监听器吗?如何?
答案 0 :(得分:0)
我不太清楚你的问题,但我猜你已经存储了你的分数
//so you can use an handler and a runnable to update textView each 1000ms
private TextView yourTextView
private mHandler = new Handler();
private Runnable = new Runnable() {
@override
public void run() {
// Check first if the reference to your textView is available
if(yourTextView !=null) {
// Get your score some how
yourTextView.setText(myScore);
}
mHandler.postDelayed(this,1000);
}
};
当您准备好显示分数时,在您的代码中 使用
调用处理程序mHandler.posDelayed(mRunnable,100); // Shorter delay for instant trigger
答案 1 :(得分:0)
您的活动实现自定义侦听器,并在游戏中注册自己,或使用事件总线。
我经常使用这个 https://github.com/greenrobot/EventBus
每当游戏获得一个新分数时,它会发布一个分数事件,所有注册到它的对象(如您的活动)都会获得该事件并刷新它的数据(在这种情况下为UI)。