TabHost tabHost = getTabHost();
TabHost.TabSpec spec; // Resusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
// Create an Intent to launch an Activity for the tab (to be reused)
intent = new Intent().setClass(this, FirstActivity.class);
// Initialize a TabSpec for each tab and add it to the TabHost
spec = tabHost.newTabSpec("hottest").setIndicator("Hottest",
res.getDrawable(R.drawable.ic_tab_hottesttrack))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, SecondTrackActivity.class);
spec = tabHost.newTabSpec("latest").setIndicator("Latest",
res.getDrawable(R.drawable.ic_tab_latesttrack))
.setContent(intent);
tabHost.addTab(spec);
奥基!我的代码很简单。制作2个标签并将其添加到TabHost中。问题是我的活动都使用了大量的记忆并需要时间来处理。一次只能加载一个活动。但是,当我启动我的应用程序时,似乎两个活动都被加载,这将需要更长的时间。 所以我希望在选择其选项卡时只允许加载一个活动,简单地说如果我选择第一个选项卡然后第一个活动加载,我选择第二个选项卡然后第二个活动将加载,而不是两个。有什么建议吗?
答案 0 :(得分:0)
活动开始后,系统会调用onCreate()
和onResume()
个回调。您可能只在例如开始计算时开始计算用户按下活动中的按钮,以便初始加载快速。
还要将您的长计算放在AsyncTask
内,以便计算不会阻止UI线程。