【问题标题】:Ice Cream Sandwich Style Tabs冰淇淋三明治风格标签
【发布时间】:2012-04-12 14:03:03
【问题描述】:

有谁知道Ice Cream Sandwich 样式标签的教程/示例(向左/向右滑动 - 就像在 YouTube 应用程序中一样)不是用于向后兼容支持库。只需要 API 级别 14 或 15。

我的项目只需要在我的Galaxy Nexus 上运行Ice Cream Sandwich。所以我想知道这是如何在不需要向后兼容的情况下完成的。

谢谢, 山姆

【问题讨论】:

  • This 将帮助您快乐编码
  • 这是一个解决您问题的库。根据 Apache 许可证 2.0 版开发和分发。最初基于 Patrik Åkerfeldt 开发的小部件。类似于标题指示器,但在滚动和动画水平选项卡中显示尽可能多的标题。
  • 鉴于我想要“不向后兼容”的原因是因为我认为它会更简单。我实际上最终使用了它,因为它是最简单的选择,并且免费为您提供向后兼容性。

标签: android android-4.0-ice-cream-sandwich android-tabs


【解决方案1】:

好吧,没有理由特别避免向后兼容,因为如果您不希望旧设备使用它,您可以在清单中为您的应用指定最低 API 版本。

也就是说,ViewPager 是 Google 的做法,它利用了 Fragments,虽然它们向后兼容,但已内置到 Android 4 中。

如果您不想使用Fragments,而只是想从View 滑动到View,您可以使用普通的PagerAdapter 而不是FragmentPagerAdapter,或者您可以使用ViewFlow.

ViewFlow 页面上的示例用于支持 v4,但也有一些示例 here 用于 API 13+,可能更接近您正在寻找的内容(特别是 this one)。

【讨论】:

  • 我认为我的思路是它可能会更简单,代码更少。我可能错了...
  • 据我所知,ViewPager 页面上的代码示例中唯一出于兼容性目的明确完成的是它从FragmentPagerSupport 获得的一个类。其他一切都是非常标准的样板:创建您的Activity,给它一个标签栏,一个Adapter,以及一组Views(或Fragments)以供该适配器显示。
  • 虽然他们给出的实际示例更复杂,因为它特别使用了操作栏选项卡——我不知道你是否想这样做,但它确实有一个不错的 ICS 外观——'感受一下。
【解决方案2】:

我认为您已经在 API 14+ 设备上获得了ActionBar with "tabs+swipe" navigation。整个东西都可以适应蜂窝设备之前的设备,因为我只是碰巧自己做了一个演示。

基本上,最简单的方法是:

  • 尽可能扩展/导入 com.actionbarsherlock 类!
  • 尽可能从 android.support.v4(而不是通常的 android)包导入!

然而,在你做这些之前,你必须首先:

例如(MainActivity.java):

import com.actionbarsherlock.app.ActionBar.Tab;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.ViewPager;

public class MainActivity extends SherlockFragmentActivity implements ActionBar.TabListener {/*...*/} 

【讨论】:

  • 投了反对票,因为这与所要求的完全相反。据推测,取消向后兼容性的原因是避免学习和/或依赖外部库。
  • 从我回答这个问题的那一刻起,我就记得,这个问题的措辞不是那样的。考虑到现在这个问题的措辞,我的回答确实应该被否决。我想说,对于像我这样的新人来说,这真是太不幸了。笑。
猜你喜欢
  • 2013-03-29
  • 1970-01-01
  • 2012-03-21
  • 1970-01-01
  • 2012-05-02
  • 1970-01-01
  • 1970-01-01
  • 2012-03-11
  • 2014-03-26
相关资源
最近更新 更多