在TabHost中不调用绑定服务的onServiceConnected回调

时间:2013-04-24 10:32:22

标签: android android-service android-tabhost

我使用绑定到我的所有Service的本地activities,当我开始Activity时,我得到callback

@Override
        public void onServiceConnected(ComponentName name, IBinder service) {
}

但如果我使用TabHost并且正在以下一种方式启动活动:

TabSpec spec = tabHost.newTabSpec("Spec");
intent = new Intent(this, TestActivity.class);
spec.setContent(intent);

onServiceConnected回调被称为。

为什么呢?如何解决这个案子?

SUMMARY:

intent = new Intent(this, MyActivity.class);
startActivity(intent); // In this case callback is called


TabSpec spec = tabHost.newTabSpec("Spec");
intent = new Intent(this, MyActivity.class);
spec.setContent(intent); // In this case callback is not called

1 个答案:

答案 0 :(得分:0)

在标签而不是bindService(.....)中,您必须使用getApplicationContext.bindService(.....)才能点击onServiceConnected回调。