小编hka*_*atz的帖子

获得某些UIColors的颜色组件的异常结果

我正在尝试提取a的rgb组件,UIColor以便手工构建a 中的像素CGBitmapContext.以下示例代码适用于大多数UIColor常量,但令人困惑,并非全部.以机智:

CGColorRef color = [[UIColor yellowColor] CGColor];
const float* rgba = CGColorGetComponents(color);

float r = rgba[0];
float g = rgba[1];
float b = rgba[2];
float a = rgba[3];

NSLog( @"r=%f g=%f b=%f a=%f", r, g, b, a);
Run Code Online (Sandbox Code Playgroud)

[UIColor yellowColor]如上所述,上述结果为
r = 1.000000 g = 1.000000 b = 0.000000 a = 1.000000.

[UIColor redColor]给出r = 1.000000 g = 0.000000 b = 0.000000 a = 1.000000,再次如预期的那样.同样的blueColorgreenColor.

然而,结果[UIColor …

iphone core-graphics cgcolor uicolor

11
推荐指数
1
解决办法
3161
查看次数

在iPhone上绘制Unicode字符

为什么要弄清楚如何在iPhone上绘制Unicode字符这么难,在此过程中得出简单的字体指标,例如每个成像字形在选择字体中的宽度?

它看起来很简单NSLayoutManager,但显然手机上没有这个API.人们这样做的方式似乎是使用私有API CGFontGetGlyphsForUnichars,它不会让你通过Apple看门人进入App商店.

有人能指出我的文档,说明如何做到这一点?我快速失去了头发.

霍华德

iphone unicode fonts drawing text

8
推荐指数
1
解决办法
5954
查看次数

失败,但不返回任何错误对象.为什么?

我试图理解[NSData writeToFile:options:error:]返回的值的含义.该方法返回BOOL,根据Apple的文档,如果操作成功,则为"YES,否则为NO".

很公平,但如果它不是,我会假设错误参数将被设置为某些可检索的NSError*值.然而,在我遇到的结果中,情况并非如此.因此我有点困惑,不知道如何确定导致失败的原因.

也就是说,我有这个代码(或多或少):

NSError* error = nil;
BOOL success = [data writeToFile: filePath error: &error];
if ( error )
    NSLog( @"error = %@", [error description] );
Run Code Online (Sandbox Code Playgroud)

success结果是NO在我正在运行的代码中,但该NSLog语句永远不会执行.怎么会?

霍华德

error-handling objective-c nsdata

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

当视图移动到超级视图之外时,touchesBegan停止工作

我正在使用相对于其超视图在屏幕上[aSubview touchesBegan]移动aSubview的位置.它的超级视图并不比子视图本身大.这很简单,如下面的代码段所示:

    UITouch* touch = [touches anyObject];
    CGPoint touchPoint = [touch locationInView:[self superview]];
    self.center = touchPoint;
Run Code Online (Sandbox Code Playgroud)

然而,一旦a aSubview被移动,只要它的任何部分超出其超视图的范围,该部分中的触摸就不再注册.换句话说,touchesBegan不再开火.aSubview无论在哪里移动与其超级视图相关,我都希望能够进行注册.

有什么想法吗?
霍华德

iphone touch

5
推荐指数
2
解决办法
1744
查看次数

使用IB将UISegmentedControl添加到NavigationBar

我目前UISegmentedControl正在以视图控制器的viewDidLoad方法以编程方式创建,并通过分配给视图控制器的导航栏将其添加到视图控制器的方法中self.navigationItem.titleView.

这很容易,但我希望能够在Interface Builder中做到这一点,到目前为止还没有弄清楚如何.谷歌也没有多少帮助.有人可以描述如何在IB中执行此操作或指向在线示例吗?我非常感激.谢谢,霍华德

iphone objective-c interface-builder uisegmentedcontrol

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