如何实现像Android棒棒糖应用程序这样的首次发布教程:比如床单、幻灯片应用程序?
我的Nexus5中闪现了Android 5.0最终版本。我注意到它在第一次发布时以非常漂亮、干净和优雅的方式显示教程。“工作表”、“幻灯片”等应用程序 我们如何在Android L兼容的应用程序中实现这一点 此外,该应用程序在第一次启动屏幕上淡出,然后显示教程如何实现像Android棒棒糖应用程序这样的首次发布教程:比如床单、幻灯片应用程序?,android,android-5.0-lollipop,Android,Android 5.0 Lollipop,我的Nexus5中闪现了Android 5.0最终版本。我注意到它在第一次发布时以非常漂亮、干净和优雅的方式显示教程。“工作表”、“幻灯片”等应用程序 我们如何在Android L兼容的应用程序中实现这一点 此外,该应用程序在第一次启动屏幕上淡出,然后显示教程 您可以在此处使用ViewPagerIndicator:。然后,您应该定义SharedReferences,以便只显示一次ViewPager。你可以写: public class MainActivity extends Activity
您可以在此处使用ViewPagerIndicator:。然后,您应该定义SharedReferences,以便只显示一次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);
}
}
}
也许你想使用一种罗马努里克的解决方案:首先,没有秘密。插图的质量是获得这个漂亮结果的关键。所以除非你自己是设计师,否则你必须为他们找到一个好的设计师 显然,我可以看到几种接近这一点的方法
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);
ViewPagerIndicator
,以及如何仅在用户首次启动应用程序时启动教程我在这里找到了这个图书馆:
它用这些圆圈创建了一个类似棒棒糖的ViewPager。只需格式化布局,使其适合您的应用程序,然后您就可以了。它不包含动画,但我认为这是一个开始 有一个很好的库可以模拟这些首次运行的教程:
单击此处查看大图此git将帮助您实现所需: , 正如您所提到的,这个android库演示了一个与Google Sheets上的教程非常相似的材料介绍教程 此外,该库为每个页面设置背景色,当在两个页面之间滚动时,两种颜色将相互淡入 下面是一些可以帮助您解决问题的介绍:
如果您不想使用库,它非常简单。我以前使用过一个库,但我开始实现一个自定义版本。您所要做的就是使用选项卡式视图和视图寻呼机。然后将教程中的所有这些页面设计为片段。这些片段可以有任何按钮,在任何位置,以及您喜欢的不同样式,因为每个片段都是您自己实现的。这并不难。最后,只需使用共享首选项,检查它是否是第一次运行。如果它是如何活动的,其中有所有的片段。否则不要显示该活动。我很确定这不是公共框架的一部分。您可能需要自己实现它。这看起来很接近。谢谢我将实施并让您知道。您是否也知道,当用户试图像Google Sheets应用程序一样在最后一页上刷出边界(向左(向前)刷)时,如何完成活动(使用淡出动画)?与之相关。@GerritHoekstra您所能做的只是将您的
ViewPager
置于主屏幕的同一布局中(位于主屏幕的其余部分之上),并仅在第一次启动时显示/充气ViewPager
。您将第五个“假”空页面添加到您的ViewPager
。当用户滑动到第5页时,您可以更改ViewPager
的alpha,直到用户松开手指时,您最终将其可见性设置为“消失”。@Mathieumare谢谢!我已经实现了成功,现在唯一的事情是如何从CirclePageIndicator
隐藏假视图,因为当我有4个视图和1个假视图时,它显示5个圆而不是4个圆(我想要),你知道如何修复吗?@Mathieumare不介意,我已将CirclePageIndicator
更改为仅显示4个圆圈。此外,我还将我的活动透明化,这样我就不必将“教程布局”与主屏幕的布局相同。使用第二个参数(positionOffset
)计算和更改alpha发生在onPageScrolled
中。谢谢你的帮助!非常感谢。我认为这是最好的。如果不是,你能建议点别的吗?这些看起来真的很棒!如果您不想使用外部库,您肯定应该看看本教程: