Tag: 转换

iOS – 这个UIPageViewController由UISegmentedControl控制,或者这是什么?

这个UIPageViewController如何被这个头部控制好像是UISegmentedControl ?

如何使用转换来旋转UIView

我有一个UIView ,我正在尝试使用您可以从coremotion态度获得的音高值进行转换(旋转)。 我正在使用转换,但我不知道我的代码是正确的,因为UIView没有做任何事情。 这是我的代码被称为每秒几次。 – (void)setLabelValueRoll:(double)roll pitch:(double)pitch yaw:(double)yaw { self.yLabel.text = [NSString stringWithFormat:@"pitch: %f", pitch]; CATransform3D transform; transform = CATransform3DMakeRotation(pitch + M_PI_2, 1, 0, 0); self.wapaA.layer.sublayerTransform = transform; } 诚实地说,我不确定如何设置这个部分(pitch + M_PI_2,1,0,0)来使得我的squar UIView的音高效果,所以当我们来回倾斜手机的时候,我会保持水平。 任何帮助,将不胜感激。

iOS AssistiveTouch使用自定义键盘时animation较慢

我正在构build一个自定义的键盘,现在一切都很好,除非在启用自定义键盘的过程中使用AssistiveTouch时,点击打开它时,AssistiveTouch的animation有点迟缓(慢放大,缩小)。 我在iPhone 4s和iPhone 6上testing过,同样的麻烦,所以我认为不是关于设备硬件或资源消耗。 任何人有同样的麻烦或知道的原因? 以及如何解决它?

如何在自定义容器视图控制器中实现交互式转换

我实现了自己的自定义容器视图控制器,并试图使其与iOS 7视图控制器转换兼容。 我让我的自定义容器视图控制器符合UIViewControllerContextTransitioning和我发送self当我呼吁transitionDuration:和animateTransition: 只要我只使用animation过渡,这一切都可以正常工作。 现在我想让它与交互式转换一起工作,所以我调用交互控制器的startInteractiveTransition:而不是animation控制器的animateTransition:再次使用self作为参数。 但是,如果我使用UIPercentDrivenInteractiveTransition作为交互控制器,则会在我的上下文(它是容器视图控制器本身)上调用_animator方法。 当然,我还没有实现这个私有的和无证的方法,所以它崩溃了… 我在执行中丢失了什么? UIPercentDrivenInteractiveTransition是否仅与Apple类兼容,因为它使用了一些实现魔法(因为它需要所有东西都应该放在UIViewanimation块中)? 文档和头文件看起来像我们可以实现我们自己的容器视图控制器,并仍然使用自定义转换,但这是真的还是只是一厢情愿的想法,因为没有人会真的这样做? 如果我不能使用UIPercentDrivenInteractiveTransition ,那么交互/animation逻辑究竟应该在哪里? 在UIViewControllerTransitionCoordinatorContext对象? 在UIViewControllerInteractiveTransitioning对象(最有可能的是,这个对象是驱动程序…)? 或者在UIViewControllerAnimatedTransitioning对象(这可能是真正的animation应该发生的地方,但是这意味着在交互过程中多次调用animateTransition: ?或者为交互式转换的每一步添加新的方法?) 编辑:文档说: 一个由百分比驱动的交互式转换对象驱动一个视图控制器消失和另一个视图控制器外观之间的自定义animation。 它依赖于一个转换animation代理(一个采用UIViewControllerAnimatorTransitioning协议的自定义对象)来设置和执行animation。 没有UIViewControllerAnimatorTransitioning协议。 假设这是一个错误,或者在iOS 7开发过程中发生了名称变化,实际上是UIViewControllerAnimatedTransitioning协议,那么我们如何将交互控制器与animation控制器相连? 我想这是视图控制器驱动转换的责任,但我没有看到任何API来做这个链接,所以这将意味着UIPercentDrivenInteractiveTransition确实为Apple类保留?

转换设备的姿态,使Z轴与北向alignment,Y轴在CoreMotion中指向重力?

我使用CMAttitudeReferenceFrameXTrueNorthZVertical这种方式旋转值滚动,俯仰和偏航是(0,0,0)当设备是平坦的桌子和X +轴指向北。 我想要做的是当Z轴指向北,Y现在指向重力时有(0,0,0)值? 这可能吗?

ios ipad:在横向模式下将TabBar旋转到左侧,并进行变换和约束更新

我正在创build一个ios的iPad应用程序,它有一个UITabBar控件位于底部的3个MenuItems。 通常,当我旋转设备时,tabbar将保持在横向的底部。 我希望TabBar在风景模式下左侧旋转,并成为垂直表示。 如果可能的话,我不想创build一个带有button的UIView,因为我想要同一个对象来pipe理这两个对象,而且我喜欢普通TabBar的便利。 我的计划是检测设备的位置,并使用UITransform在横向上旋转TabBar 90度。 现在让我们忽略里面的图标和文本旋转,只关注整个TabBar本身。 旋转工作,除了它离开垂直TabBar在屏幕的底部中心看起来很不恰当的地方。 接下来的任务是将其限制在左侧墙上。 通常我使用3个约束来将TabBar保持在左侧/下侧/右侧。 我很难find正确的约束来正确保持它的左侧。 一个主要的问题是,一旦完成转换,高度和宽度属性在标签栏上反转(或者也转换)。 如此之高使其在屏幕上更宽,而宽度则更高。 除了顶部/底部+高度组合导致约束冲突之外,使用顶部/底部约束以及49的高度是看起来需要的。 我附上我当前的合理工作的约束逻辑,但我不明白为什么我需要硬编码这些值如图所示。 这是获得左侧视觉输出的唯一方法。 我想知道是否有一个更干净的方法来做到这一点,也许没有硬编码值的常量。 我也不确定我将如何最终旋转文本+图标作为下一步。 附件也是目前的情况。 清楚地说明是绿色的,但最终是透明的,所以景观的顶部的截止点不会成为问题。 – (void) adjustViewsForOrientation:(UIInterfaceOrientation) orientation { switch (orientation) { case UIInterfaceOrientationPortrait: case UIInterfaceOrientationPortraitUpsideDown: { //load the portrait view // revert to normal transform _tabBar.transform = CGAffineTransformRotate(CGAffineTransformIdentity, M_PI*2); [self.view removeConstraint:_tabbarConstraintT]; [self.view removeConstraint:_tabbarConstraintR]; [self.view removeConstraint:_tabbarConstraintB]; [self.view removeConstraint:_tabbarConstraintL]; // […]

UICollectionView finishInteractiveTransition没有animation完成

我正在实现一个自定义的交互式集合视图布局转换,并且想要对它进行configuration,以便在调用finishInteractiveTransition使用一个转换布局transitionProgress为1.0, startInteractiveTransitionToCollectionViewLayout:completion:的完成块立即被触发。 我需要这种行为,因为我希望能够在完成后立即开始另一个转换。 有了这个完成块没有立即发射,我最终nested push animation can result in corrupted navigation bar日志中的nested push animation can result in corrupted navigation bar ,因为转换上下文还没有completeTransition:它的completeTransition:方法。 事实上,即使没有animation要求,也只有0.05秒的小延迟。 是否有可能强制UICollectionView不animation这个完成? 一些代码… 我有一个转换控制器,处理导航转换的animation和交互式转换。 该控制器的相关部分如下: – (void)startInteractiveTransition:(id<UIViewControllerContextTransitioning>)transitionContext { self.context = transitionContext; UIView *inView = [self.context containerView]; UICollectionViewController *fromCVC = (UICollectionViewController *)[self.context viewControllerForKey:UITransitionContextFromViewControllerKey]; UICollectionViewController *toCVC = (UICollectionViewController *)[self.context viewControllerForKey:UITransitionContextToViewControllerKey]; self.transitionLayout = (MyTransitionLayout *)[fromCVC.collectionView startInteractiveTransitionToCollectionViewLayout:toCVC.collectionViewLayout completion:^(BOOL […]

iOS:有关GLKMatrix4MakeLookAt结果内相机信息的问题

iOS 5文档显示, GLKMatrix4MakeLookAt与GLKMatrix4MakeLookAt操作相同。 定义在这里提供: static __inline__ GLKMatrix4 GLKMatrix4MakeLookAt(float eyeX, float eyeY, float eyeZ, float centerX, float centerY, float centerZ, float upX, float upY, float upZ) { GLKVector3 ev = { eyeX, eyeY, eyeZ }; GLKVector3 cv = { centerX, centerY, centerZ }; GLKVector3 uv = { upX, upY, upZ }; GLKVector3 n = GLKVector3Normalize(GLKVector3Add(ev, GLKVector3Negate(cv))); […]

ios缓慢/不工作的CSS3转换

我正尝试在自己制作的自适应网站上开始使用一些CSS3转换,并且所有function都在桌面版Chrome和Android版Chrome上运行良好,但是在Chrome和Safari的iOS设备上无法正常工作。 例如,我用于我的菜单的CSS代码片段如下: #menu { width: 180px; height: 100%; position: fixed; top: 0; left: -180px; z-index: 9; transition: left 1s; -webkit-transition: left 1s; } 我有一个菜单button,当点击时,调用一个javascript函数,将“左”样式改为0,它将从屏幕左侧的外部转换到位置。 一切工作正常,在桌面和Chrome浏览器的Android,但在iOS和Chrome浏览器,它要么是非常波涛汹涌,要么只是延迟一秒钟,然后立即popup。 在我所有的转换中都是这样做的,但为了简单起见,我正在显示菜单。 我已经做了大量的search和search堆栈,但我真正发现的唯一的东西说增加以下内容: -webkit-backface-visibility: hidden; -webkit-perspective: 1000; -webkit-transform: translate3d(0, 0, 0); 以强迫硬件加速的风格,但它也不工作。 我没有看到任何改变。 任何帮助,将不胜感激。

“魔术移动”效果自定义转换

我试图让两个视图控制器之间的自定义过渡。 首先,这里有一张图片来说明我想要的东西: 我想要一个UICollectionViewCell扩展到整个屏幕。 在这个单元格中,子视图与Autolayout放在IB中。 我只是想让每个子视图都转到新的位置。 所以我尝试了subview.frame = newSubview.frame在animation块,但它不工作(因为Autolayout我认为)。 我想在animation发生的时候删除约束条件,但是不起作用。 我也试着让@IBOutlets的约束和改变不变的属性。 这是我的代码: let detailView = detailViewController.view let cellView = self.selectedCell container.addSubview(cellView!) let duration = self.transitionDuration(transitionContext) UIView.animateWithDuration(duration, delay: 0.0, options: .CurveEaseInOut, animations: { let newFrame = detailViewController.view.frame cellView!.frame = newFrame cellView!.imageView.frame = newFrame cellView!.labelTopConstraint.constant = 27 cellView!.labelRightConstraint.constant = 8 cellView!.layoutIfNeeded() } … 实际上,当animation开始的时候,标签会卡到一个位置,然后移动,最后它们不在正确的位置。 有任何想法吗 ? 谢谢