我有一个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)
所以问题是......我怎样才能在一开始就得到正确的观点?
FBSession
新的Facebook iOS SDK v4.x中没有更多课程.如何确定用户是否已登录?提前致谢.
如何改变UITabBarItem的宽度?
我有一个标题的项目,比默认项目宽度宽.我该如何解决?
假设我有一个动画师将视图从 移动(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
我在为项目添加可达性方面遇到了一些问题.我之前只是使用过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)
谢谢!
ios ×3
objective-c ×3
xcode ×3
animation ×1
bounce ×1
bounds ×1
ipad ×1
iphone ×1
pdf ×1
reachability ×1
rotation ×1
swift ×1
uitabbaritem ×1
width ×1