小编dem*_*733的帖子

获取UIViewController视图的正确边界

我有一个iPad应用程序.在横向方向上,UIViewController视图实际宽度= 1024px和高度= 768 - 20(statusBar) - 44(navigationBar)= 704px.

所以我想得到这个[1024 x 704]尺寸,我正在使用self.view.bounds它.它返回[748 x 1024],这是错误的!但是当我旋转屏幕两次(当前 - >纵向 - >当前)时,视图的边界是正确的 - [1024 x 704].

视图初始化如下:

- (void)loadView {
    self.view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
    self.view.backgroundColor = [UIColor lightGrayColor];
}
Run Code Online (Sandbox Code Playgroud)

边界是这样的:

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"bounds = %@", NSStringFromCGRect(self.view.bounds));
}
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
    NSLog(@"bounds = %@", NSStringFromCGRect(self.view.bounds));
}
Run Code Online (Sandbox Code Playgroud)

所以问题是......我怎样才能在一开始就得到正确的观点?

xcode rotation uiviewcontroller bounds ios

44
推荐指数
3
解决办法
5万
查看次数

Facebook iOS SDK 4.x中没有FBSession

FBSession新的Facebook iOS SDK v4.x中没有更多课程.如何确定用户是否已登录?提前致谢.

objective-c ios facebook-ios-sdk

16
推荐指数
2
解决办法
9866
查看次数

如何改变UITabBarItem的宽度?

如何改变UITabBarItem的宽度?

我有一个标题的项目,比默认项目宽度宽.我该如何解决?

xcode objective-c width uitabbaritem

9
推荐指数
2
解决办法
8058
查看次数

UIViewPropertyAnimator的弹跳效果

假设我有一个动画师将视图从 移动(0, 0)(-120, 0)

let frameAnimator = UIViewPropertyAnimator(duration: duration, dampingRatio: 0.8)

animator.addAnimations { 
    switch state:
    case .normal: view.frame.origin.x = 0
    case .swiped: view.frame.origin.x = -120
    }
}
Run Code Online (Sandbox Code Playgroud)

我将它与 一起使用UIPanGestureRecognizer,这样我就可以随着手指的移动不断调整视图的大小。

当我想在动画开始或结束时添加某种弹跳效果时,就会出现问题。不仅仅是阻尼比,还有弹跳效果。最简单的想象方法是 的“滑动删除”功能UITableViewCell,您可以将“删除”按钮拖动到超出其实际宽度,然后它会弹回来。

实际上,我想要实现的是在段fractionComplete之外设置属性的方法[0, 1],因此当分数为 时1.2,偏移量将变为144而不是其最大值 120。

现在 的最大值fractionComplete正是1

以下是一些可视化此问题的示例:

我目前拥有的: 在此输入图像描述

我想要实现的目标: 在此输入图像描述


编辑(1 月 19 日):

抱歉我的回复迟了。以下是一些说明:

我不使用UIView.animate(...),而是UIViewPropertyAnimator出于一个非常具体的原因使用:它为我处理所有的计时、曲线和速度。

例如,您将视图拖动到一半。这意味着剩余部分的持续时间应比总持续时间短两倍。或者,如果您拖动了 99% 的距离,它应该几乎立即完成剩余部分。

作为补充,UIViewPropertyAnimator具有诸如暂停(当用户再次开始拖动时)或反向(当用户开始向左拖动,但之后他改变主意并将手指移到右侧时)等功能,我也受益于。

所有这些对于简单的 UIView 动画来说是不可用的,或者最多需要大量的努力。它只能进行简单的转换,但事实并非如此。

这就是为什么我 …

animation bounce uipangesturerecognizer swift uiviewpropertyanimator

5
推荐指数
1
解决办法
938
查看次数

如何从PDF页面获取文本?

如何从Objective-C中的PDF页面获取文本?

pdf objective-c

3
推荐指数
1
解决办法
4801
查看次数

在Xcode 4.0上使用Reachability.h时出错

我在为项目添加可达性方面遇到了一些问题.我之前只是使用过Reachability,但这次我失败了.我总是有以下错误:

Undefined symbols for architecture armv7:
    "_OBJC_CLASS_$_Reachability", referenced from:
    objc-class-ref in DelegatePrincipal.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

我的项目不使用ARC(我不想要它),基础sdk 5.0,ARchitecture标准(armv7),我已经添加了SystemConfiguration.framework.

我还测试了Tony百万可达性,它不起作用.同样的问题.

我从其他主题中看到了同样的问题,但它与ARC有关.我的项目没有ARC.

另外,我在委托中进行了一个简单的测试,如下所示:

Reachability *reach = [Reachability reachabilityForInternetConnection]; 
    NetworkStatus netStatus = [reach currentReachabilityStatus];    
    if (!netStatus == NotReachable) {
        NSLog(@"Not connected");
    }
Run Code Online (Sandbox Code Playgroud)

谢谢!

iphone xcode reachability ipad ios

2
推荐指数
1
解决办法
2836
查看次数