Android 对于选项卡式视图,我真的必须将所有代码放在一个活动中吗?

Android 对于选项卡式视图,我真的必须将所有代码放在一个活动中吗?,android,android-fragments,android-actionbar,actionbarsherlock,android-tabs,Android,Android Fragments,Android Actionbar,Actionbarsherlock,Android Tabs,我试图用3个选项卡创建一个简单的用户界面,每个选项卡都有自己独特的用途。我知道实现选项卡的新方法是使用Actionbar和片段,但这让我感到困惑,因为最终我的应用程序的所有逻辑都位于一个相当大的活动中,而我希望平台鼓励更多的功能分离。我在这里做错了什么 我和在这里发帖的那位先生有很多共同点:。。。。不幸的是,他的大部分问题都没有得到回答 。。。而且,我基本上从一个人的在线示例中了解了如何使用Actionbar创建选项卡,这里:。(只是例子不多!) 下面是获取操作栏并创建两个选项卡: Action

我试图用3个选项卡创建一个简单的用户界面,每个选项卡都有自己独特的用途。我知道实现选项卡的新方法是使用Actionbar和片段,但这让我感到困惑,因为最终我的应用程序的所有逻辑都位于一个相当大的活动中,而我希望平台鼓励更多的功能分离。我在这里做错了什么

我和在这里发帖的那位先生有很多共同点:。。。。不幸的是,他的大部分问题都没有得到回答

。。。而且,我基本上从一个人的在线示例中了解了如何使用Actionbar创建选项卡,这里:。(只是例子不多!)

下面是获取
操作栏
并创建两个选项卡:

ActionBar actionbar = getActionBar();

actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

ActionBar.Tab calendarTab = actionbar.newTab().setText("Calendar");
ActionBar.Tab logTab = actionbar.newTab().setText("Sleep Log");

Fragment calendarFragment = new CalendarFrag();
Fragment sleepLogFragment = new LogFrag();

calendarTab.setTabListener(new MyTabListener(calendarFragment));
logTab.setTabListener(new MyTabListener(sleepLogFragment));

actionbar.addTab(logTab);
actionbar.addTab(calendarTab);
下面是我用
片段制作的这些“子类”中的全部代码:

public class CalendarFrag extends Fragment {

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle      savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.calendar, container, false);
    }
}
从字面上说,我所做的只是夸大一个观点;只是感觉有点不对劲。然后我有一个较长的活动,在其中我拥有我的应用程序的所有逻辑,这也很烦人。不幸的是,按照我的设置方式,我需要动态生成进入视图(如
R.layout.calendar
)的内容,这是我必须在某处完成的

现在我在移动我所有的代码时遇到了很多错误,我想知道整理一下是否真的值得——最初我试图用TabHost和TabWidget等来做Tab,但现在已经不推荐了


我真的应该把我所有的代码都放在一个活动中以填充三个选项卡吗?难道没有更好的办法吗?我应该把动态填充这些空片段的逻辑放在哪里?我想我更喜欢片段本身,或者单独的活动。

标签和片段一开始可能会让人困惑。您可以使用片段并在片段中分隔代码。在活动中,您可以实现某种监听器,每个片段都可以在事情发生时向其报告。如果您使用片段并计划支持android 3之前的设备,您可能希望添加支持库并使用supportFragments,而不是常规片段(它们几乎相同)。我想这会有一点帮助。实际上,我已经为我的应用程序设置了支持和ActionBarSherlock,但正是在那个时候,我停止了运行代码,所以我将其回滚,并认为一旦我知道发生了什么,我就可以重新添加兼容性。那么,你的意思是,如果我以某种方式将活动链接到片段,我可以为应用程序的不同功能提供不同的活动吗?有什么建议吗?各位听众……等一下,我想我能处理好这件事,哈哈。我需要一段时间才能重新编写一堆代码,哈哈,但至少我有一个想法。谢谢如果你给出一个真实的答案,我会+1你。标签和片段一开始可能会让人困惑。您可以使用片段并在片段中分隔代码。在活动中,您可以实现某种监听器,每个片段都可以在事情发生时向其报告。如果您使用片段并计划支持android 3之前的设备,您可能希望添加支持库并使用supportFragments,而不是常规片段(它们几乎相同)。我想这会有一点帮助。实际上,我已经为我的应用程序设置了支持和ActionBarSherlock,但正是在那个时候,我停止了运行代码,所以我将其回滚,并认为一旦我知道发生了什么,我就可以重新添加兼容性。那么,你的意思是,如果我以某种方式将活动链接到片段,我可以为应用程序的不同功能提供不同的活动吗?有什么建议吗?各位听众……等一下,我想我能处理好这件事,哈哈。我需要一段时间才能重新编写一堆代码,哈哈,但至少我有一个想法。谢谢如果你给出一个真实的答案,我会+1你。