如何实施Android棒棒糖应用程序的第一个启动教程:像表格,幻灯片应用程序?

我在我的Nexus 5中安装了5.0版本的最终版本。我注意到它有非常漂亮,干净而优雅的初次展示教程的方式。 “表格”,“幻灯片”等应用

我们如何在我们的Android L兼容的应用程序中实现?

此外,应用程序淡出第一个启动屏幕,然后显示教程。

教程画面1初始屏幕淡出并显示教程

有一个非常好的库来模拟这些第一次运行的教程: https : //github.com/PaoloRotolo/AppIntro

AppIntro示例截图

点击查看大图

首先,没有什么秘密。 插图的质量是获得这个漂亮结果的关键。 所以除非你是一个devise师,否则你将不得不为他们找一个好的devise师。

从这个公寓,我可以看到几种方法来接近这一点。

  1. 首先,插图有一个非常微妙的视差效果。 你可以通过使用这个ParallaxTransformPage的要点来实现它。 我使用它,它工作得很好。

  2. 另外, 这里有一个让你平滑地改变屏幕的背景颜色,同时切换页面的库。

  3. 对于闪屏淡出animation,你可以做这样的事情:

    final ImageView launchScreen = (ImageView) context.findViewById(R.id.launch_screen_view); new Handler().postDelayed(new Runnable() { @Override public void run() { Animation animation = AnimationUtils.loadAnimation(context, android.R.anim.fade_out); animation.setAnimationListener(new Animation.AnimationListener() { // ... @Override public void onAnimationEnd(Animation animation) { launchScreen.setVisibility(View.GONE); } }); launchScreen.startAnimation(animation); } }, 2000); 
  4. 按照linkas对ViewPagerIndicator的使用回答 ,以及如何在用户第一次启动应用程序时启动本教程。

这个git应该可以帮你实现你想要的: https : //github.com/spongebobrf/MaterialIntroTutorial ,

正如您所提到的,这个Android库展示的材料介绍教程非常像Google表格上的。

另外,这个库为每个页面设置背景颜色,当在两个页面之间滚动时,这两个颜色会相互淡入

这里有几个可以帮助你的插件:

  1. https://github.com/HeinrichReimer/material-intro
  2. https://github.com/PaoloRotolo/AppIntro

我在这里find了这个库:

CircleIndicator库

它创build了一个类似棒棒糖的ViewPager与这些圈子。 只需格式化布局,使其适合您的应用程序,然后你应该没问题。 它不包含animation,但我认为这是一个开始。

你可以在这里使用ViewPagerIndicator: http ://viewpagerindicator.com/#download。 然后,您应该定义SharedPreferences,只显示一次ViewPager。 你可以写:

 public class MainActivity extends Activity { public static final String MyPrefs = "MyPrefs"; ... @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); SharedPreferences sp = getSharedPreferences(MyPrefs, Context.MODE_PRIVATE); if (!sp.getBoolean("first", false)) { SharedPreferences.Editor editor = sp.edit(); editor.putBoolean("first", true); editor.commit(); Intent intent = new Intent(this, SampleCirclesDefault.class); //call your ViewPager class startActivity(intent); } } } 

也许你想使用Roman Nurik解决scheme之一: https : //github.com/romannurik/Android-WizardPager

如果你不想使用一个库,这是非常简单的。 我曾经使用过一个库,但是我开始实现一个自定义版本。 所有你需要做的就是使用标签式的视图和查看传呼机。 然后在教程中将所有这些页面devise为片段。 这些片段可以有任何button,任何位置,不同的样式,因为你自己实现每个片段。 这并不难。 最后,只需使用共享首选项来检查它是否是第一次运行。 如果它是如何活动的所有碎片。 否则不显示该活动。