getLocalActivityManager().getActivity(tabTag) 返回 NULL

发布于 2024-12-02 18:53:25 字数 917 浏览 1 评论 0原文

我有 2 个标签 ID 为“tag01”和“tag02”的选项卡。我已明确设置 通过调用 tabHost.setCurrentTab(0) 将焦点转移到第一个选项卡

当我调用 getLocalActivityManager().getActivity("tag01") 时,我得到 活动对象,但是当我调用

getLocalActivityManager().getActivity("tag02") then i get NULL.
//Log.i("tab status: ", getLocalActivityManager().getActivity("tag02")+""); prints null
//Log.i("tab status: ", getLocalActivityManager().getActivity("tag01")+""); prints com.test.TestActivity@437c06c8

Now 时,当我再次运行我的应用程序时,这次单击第二个选项卡,然后 getLocalActivityManager().getActivity("tag02") 给出对象 (logcat 中的 toString())。 因此,经过一次又一次的检查,我发现“只有在 第一个选项卡(我已明确设置焦点 tabHost.setCurrentTab(0)) 返回非 null”,其他选项卡返回 null 除非你不点击这些选项卡。 当我单击所有选项卡时,即至少我通过单击浏览所有选项卡 然后 getLocalActivityManager().getActivity(anyTag) 返回 对象(我正在追踪 toString()) 。如何访问其他人的活动 选项卡而不单击其他选项卡,因为用户不会知道他/她 必须单击选项卡。 请给一些建议。因为我必须访问以下活动 我的应用程序中的选项卡。 我希望你理解我的问题。

谢谢

I have 2 tabs with tagID "tag01" and "tag02". I have explicitly set
the focus to first tab by calling tabHost.setCurrentTab(0)

When i call getLocalActivityManager().getActivity("tag01") i get the
object of activity but when i call

getLocalActivityManager().getActivity("tag02") then i get NULL.
//Log.i("tab status: ", getLocalActivityManager().getActivity("tag02")+""); prints null
//Log.i("tab status: ", getLocalActivityManager().getActivity("tag01")+""); prints com.test.TestActivity@437c06c8

Now when i again run my app and this time click second tab and then
getLocalActivityManager().getActivity("tag02") gives object
(toString() in logcat).
So after checking it again and again i found that "only activity in
first tab( that i had set focus explicitly by
tabHost.setCurrentTab(0)) returns non-null" and other tabs return null
unless u don't click those tab.
When i click all tabs i.e atleast i go through all tabs by clicking
them then getLocalActivityManager().getActivity(anyTag) returns
object(i am tracing toString()) . How to access activity from other
tabs without clicking other tabs because user won't know that he/she
has to click tabs.
Please give some suggestions. Because i have to access activity in
tabs in my app.
I hope you understood my problem.

thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

离鸿 2024-12-09 18:53:25

活动未创建!

如果您有 n 个选项卡 您可以在 onCreate() 中执行此操作:

for(int i=n-1;i>0;i--)
    tabHost.setCurrentTab(i);

这样,显示的选项卡是第一个选项卡(索引为 0)和 getLocalActivityManager().getActivity(anyTag) 将返回非空

The activity is not created!

if you have n tabs You could do this in your onCreate():

for(int i=n-1;i>0;i--)
    tabHost.setCurrentTab(i);

In this way, the tab displayed is the first tab (with index 0) and getLocalActivityManager().getActivity(anyTag) will return non-null

三五鸿雁 2024-12-09 18:53:25

我可以通过在调用 getactivity 函数之前设置 CurrentTab 属性值来获取活动实例,而无需运行 for 循环。

IE

tabHost.setCurrentTab(i); //i index of anytab activity
getLocalActivityManager().getActivity(anyTag);

i could able to get the activity instance with out running the for loop by setting the CurrentTab property value before calling getactivity function.

i.e

tabHost.setCurrentTab(i); //i index of anytab activity
getLocalActivityManager().getActivity(anyTag);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文