从TabActivity启动PreferenceActivity

时间:2011-07-07 17:38:44

标签: android tabactivity preferenceactivity

我有一个TabActivity,它在应用程序启动时启动。它包含3个选项卡。 我在 OptionMenu 中添加了设置选项,点击该选项后会启动自定义PreferenceActivity。这是一个简单的活动 addPreferencesFromResource(R.xml.preferences);方法中的onCreate。但是,当用户点击Settings选项时,我会收到此警告,并且根本不会显示任何内容:

07-07 13:07:56.397: WARN/InputManagerService(110): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@4075fa28

这究竟是什么问题?是否有任何特殊方法可以处理TabActivity内的呼叫活动。如何解决这个问题?

提前致谢。

3 个答案:

答案 0 :(得分:0)

使用意图框架指明要启动哪个自定义PreferenceActivity。我想,就像下面的东西一样。

getTabHost().addTabSpec().setContent(yourIntentHere);

答案 1 :(得分:0)

这就是我的所作所为:

TabHost tabHost = getTabHost();  // The activity TabHost
TabHost.TabSpec spec;            // Resusable TabSpec for each tab
Intent intent;                  // Reusable Intent for each tab

然后,对于每个标签:

intent = new Intent().setClass(this, YOURCLASS.class);
// Initialize a TabSpec for each tab and add it to the TabHost
spec = tabHost.newTabSpec("JUSTSOMENAME")
                 .setContent(intent);
tabHost.addTab(spec);

答案 2 :(得分:0)

我没有使用xml,而是在每个活动中以编程方式完成此操作,并且工作正常。