标签: uikit

如何在不损失视网膜显示质量的情况下将UIView捕获到UIImage

我的代码适用于普通设备,但在视网膜设备上会产生模糊图像.

有人知道我的问题的解决方案吗?

+ (UIImage *) imageWithView:(UIView *)view
{
    UIGraphicsBeginImageContext(view.bounds.size);
    [view.layer renderInContext:UIGraphicsGetCurrentContext()];

    UIImage * img = UIGraphicsGetImageFromCurrentImageContext();

    UIGraphicsEndImageContext();

    return img;
}
Run Code Online (Sandbox Code Playgroud)

image-capture scale uikit uiimage retina-display

293
推荐指数
9
解决办法
15万
查看次数

如何以编程方式获取iOS状态栏高度

我知道目前iPhone/iPad顶部的状态栏(带有时间,电池和网络连接)对于非视网膜屏幕是20像素,对于视网膜屏幕是40像素,但是为了将来证明我的应用程序我想要能够在没有硬编码值的情况下确定这一点.是否可以通过编程方式计算出状态栏的高度?

uikit ios retina-display

272
推荐指数
8
解决办法
19万
查看次数

使用Swift使用键盘移动视图

我有一个应用程序,在视图的下半部分有一个文本字段.这意味着当我输入文本字段时键盘覆盖文本字段.

如何在打字时向上移动视图以便我可以看到我正在键入的内容,然后在键盘消失时将其移回原来的位置?

我到处都看,但所有解决方案似乎都在Obj-C中,我还没有完全转换.

任何帮助将不胜感激.

uikit uikeyboard nsnotificationcenter ios swift

257
推荐指数
15
解决办法
17万
查看次数

不调用preferredStatusBarStyle

我跟着这个线程来覆盖-preferredStatusBarStyle,但它没有被调用.我可以更改任何选项以启用它吗?(我在我的项目中使用XIB.)

uikit ios uistatusbar ios7

250
推荐指数
13
解决办法
12万
查看次数

iPhone - 如何找到最顶层的视图控制器

我现在遇到了几个案例,它们可以方便地找到"最顶层"的视图控制器(负责当前视图的控制器),但还没有找到办法.

基本上挑战是这样的:假设一个人在一个不是视图控制器(或视图)的类中执行[并且没有活动视图的地址]并且还没有传递最顶层视图控制器的地址(或者说,导航控制器的地址),是否可以找到该视图控制器?(如果是这样,怎么样?)

或者,如果失败了,是否有可能找到最顶层的视图?

objective-c uiviewcontroller uikit uiview ios

240
推荐指数
17
解决办法
18万
查看次数

将UIButton上的文本和图像与imageEdgeInsets和titleEdgeInsets对齐

我想在两行文本左侧放置一个图标,使得图像和文本开头之间有大约2-3个像素的空间.控件本身是水平居中对齐的(通过Interface Builder设置)

该按钮类似于以下内容:

|                  |
|[Image] Add To    |
|        Favorites |
Run Code Online (Sandbox Code Playgroud)

我试图用contentEdgeInset,imageEdgeInsets和titleEdgeInsets配置它无济于事.我知道负值会扩大边缘,而正值会缩小它以使其更接近中心.

我试过了:

[button setTitleEdgeInsets:UIEdgeInsetsMake(0, -image.size.width, 0, 0)];
[button setImageEdgeInsets:UIEdgeInsetsMake(0, button.titleLabel.bounds.size.width, 0, 0)];
Run Code Online (Sandbox Code Playgroud)

但这不能正确显示.我一直在调整这些值,但是从左边的插入值开始说-5到-10似乎没有按照预期的方式移动它.-10会将文本一直向左移动,所以我预计-5会将它从左侧拉出一半,但事实并非如此.

插图背后的逻辑是什么?我不熟悉图像放置和相关术语.

我用这个SO问题作为参考,但关于我的价值观的事情是不对的. UIButton:如何使用imageEdgeInsets和titleEdgeInsets使图像和文本居中?

iphone uibutton uikit ios

239
推荐指数
11
解决办法
20万
查看次数

CGRectMake,CGPointMake,CGSizeMake,CGRectZero,CGPointZero在Swift中不可用

将代码转换为最新的swift 3.0后,我显示此错误.

在此输入图像描述在此输入图像描述

还告诉我解决方案 CGSize = CGSizeMake(0,0)

static var frameAtStartOfPan: CGRect = CGRectZero
static var startPointOfPan: CGPoint = CGPointZero
Run Code Online (Sandbox Code Playgroud)

哪个也不可用.

uikit swift3 ios10 xcode8

237
推荐指数
7
解决办法
16万
查看次数

有没有办法从UITableView中删除分隔线?

我正在寻找一种在普通模式下完全删除UITableView中的分隔线的方法.这是在分组中自动完成的,但这也会以难以衡量的方式更改表的尺寸.我已将分隔线颜色设置为colorClear.但这并不能完全解决问题.

当我试图在单元格中绘制自定义背景视图,并且我希望单元格无缝时,保留在其间的一条像素线会导致我出现问题.是否有更优雅的解决方法,然后使用分组视图,然后拉伸它?

cocoa-touch objective-c uikit

223
推荐指数
7
解决办法
12万
查看次数

如何捕获UIViewAlertForUnsatisfiableConstraints?

我看到调试器日志中出现错误:

Will attempt to recover by breaking constraint 
<NSLayoutConstraint:0x191f0920 H:[MPKnockoutButton:0x17a876b0]-(34)-[MPDetailSlider:0x17a8bc50](LTR)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKit/UIView.h> may also be helpful.
Run Code Online (Sandbox Code Playgroud)

我怎么陷阱那个电话?它不会出现在我的代码中的任何位置.

Screenshot1

constraints uikit ios autolayout xcode7

221
推荐指数
3
解决办法
9万
查看次数

如何在iOS 7中更改导航栏颜色?

如何在iOS 7中更改导航栏颜色?

基本上我想要实现像Twitter Nav Bar这样的东西(更新的Twitter iOS7就是这样).我嵌入了一个导航栏view controller.我想要的是将导航栏颜色更改为浅蓝色以及顶部的实用工具栏.我似乎找不到我的选择storyboard.

uinavigationbar storyboard uikit ios ios7

208
推荐指数
13
解决办法
28万
查看次数