创建可滑动的应用程序介绍屏幕

Posted

技术标签:

【中文标题】创建可滑动的应用程序介绍屏幕【英文标题】:Creating a swipe-able app intro screen 【发布时间】:2014-04-06 15:32:52 【问题描述】:

我正在尝试复制 this gif 中的效果。

我认为这可以通过 UIPanGestureRecognizer 完成,但我不确定。谢谢!

【问题讨论】:

您尝试了吗(或在 cocoacontrols.com 上搜索第 3 方实施) @Wain 我查过了,什么也找不到,你知道吗? 它是向左滑动而不是平移。可以通过将 UIGesture 添加到视图中(粗略地)完成,然后在向左滑动的方法上显示一个新视图。 我试过用UIPanGesture 做这个,但不知道具体怎么做 @XCodeMonkey,平移手势更适合请求。指导示例github.com/ECSlidingViewController/ECSlidingViewController 【参考方案1】:

这可以通过 UIPanGestureRecognizer 轻松完成。使用 translateInView 找出用户的手指移动了多少,并根据手指移动移动您的视图。在本例中,self 指的是视图控制器,view1 是您要拖动的顶部视图。

UIPanGestureRecognizer* pan = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)];
[self.view addGestureRecognizer:pan];

并处理它:

-(void)handlePan:(UIPanGestureRecognizer*)sender

    CGFloat xMovement = [sender translationInView:sender.view].x;
    // Do something with the movement
    view1.frame = CGRectOffset(view1.frame, xMovement, 0);

    // Then reset the translation
    [sender setTranslation:CGPointZero inView:sender.view];

【讨论】:

如何摆脱我通过滑动关闭的视图? 当视图最终离开屏幕时,您可以将 hidden 属性设置为 true,或者将其从其父视图中删除

以上是关于创建可滑动的应用程序介绍屏幕的主要内容,如果未能解决你的问题,请参考以下文章

华为手机双击才能操作程序,两个手指才能滑动屏幕,怎样解决这个问题

如何在具有用于滑动的 ItemTouchHelper 的 RecyclerView 中使 TextView 可滚动?

手机页面内容超出屏幕宽度时实现可拖拉滑动效果

是否可以在viewpager android中只创建一个可滑动的视图

如何实现 iPhone 照片编辑抽屉?

如何使屏幕呈现为 indexedStacked 子项可滚动