2011-01-23 51 views
0

我正在制作一个带有多个选项卡的Android应用程序,并且我遵循了指示我进行多项活动的开发者教程。第一个标签上有纺纱机。Android:通过选项卡跨越选项卡

如何将由spinners选择的值传递给其他选项卡?

谢谢你的帮助。

回答

1

您可以使用SharedPreferences来完成此操作。只要SharedPreference在应用程序中的任何位置发生更改,您也可以利用OnSharedPreferenceChangeListener在其他Activities中获得回调。

使用SharedPreferences确保数据一致持久。从API docs

修改的喜好必须 经历一个SharedPreferences.Editor 对象,以确保优先级值 保持在一致的状态和 控制时,他们都致力于 存储。

+0

我已经使用SharedPreferences实现了一个解决方案。感谢您的想法和链接。 – Gilbert 2011-01-28 00:34:27

0

另一种快速和肮脏的解决方案将与静态类合作,如:

public class OptionHelper 
{ 
    private static String option; 

    public static void setSelectedOption(String option) 
    { 
     //... 
    } 
    public static String getSelectedOption(){ 
     //... 
    } 
} 

也许不推荐使用。 :)

0

在我的应用我有一个需要到处传递Account对象 - 我把它Parcelable

https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/account/Account.java#L11

,只是把它添加到Intents

https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/TabWidget.java#L83

和在接收器中读回:

https://github.com/pilhuhn/ZwitscherA/blob/master/src/de/bsd/zwitscher/OneTweetActivity.java#L76

也许不是最好的选择。但我真的不认为静态单例最好(可能来自我的Appserver背景),而且应用程序在Android文档中被标记为“不使用”,所以我没有看到明显的更好的解决方案。 根据您的操作,首选项使用情况可能也不会“很好地扩展”。

+0

嗨,Heiko有趣的发现应用程序类在Android文档中被标记为“不要使用”。请您指出我的方向,我找不到那个。我认为它是一种维护应用程序全局的方法州。 – syam 2011-01-24 04:44:18

相关问题