创建彩虹色度计,以便在ios中获取用户的颜色和值

时间:2014-09-30 13:01:47

标签: ios objective-c iphone xcode6

我想在iOS中创建一个数字彩虹仪表。我希望根据用户在ios屏幕中触摸彩虹的位置获得用户响应。

数字彩虹仪表是VIBGYOR(虚幻,靛蓝,蓝色,绿色,黄色,橙色和红色)渐变图像,是风景图像。如果用户接触紫罗兰色条带,我应该能够以文本形式获得颜色。 然后我必须将这个颜色信息传递给MySQL数据库,这部分我已经通过使用php web服务完成了。

但我无法获得用户触摸图像的颜色。请帮忙。

1 个答案:

答案 0 :(得分:0)

如果将屏幕划分为七个条带,则可以通过检查其位置来映射每个条带边框。然后,如果您覆盖touchesBegan,则可以执行所需的操作。

假设彩虹由水平条组成,touchesBegan方法将如下所示:

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
    CGPoint touchLocation = [[[event allTouches] anyObject] locationInView:touchView];
    if (touchLocation.y < violetDownBorder && touchLocation.y > violetUpBorder) {
        //Violet detected
        //... send @"Violet" string to wherever
    }else if (touchLocation.y < indigoDownBorder && touchLocation.y > indigoUpBorder){
        //....
        //Complete all colours (cases) here.
        //....
    }
}

其中xxxxDownBorderxxxxUpBorder是放置xxxx边框的垂直位置。