Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 使用UISlider更改笔刷大小_Objective C_Ios_Cocoa Touch_Ipad_Core Graphics - Fatal编程技术网

Objective c 使用UISlider更改笔刷大小

Objective c 使用UISlider更改笔刷大小,objective-c,ios,cocoa-touch,ipad,core-graphics,Objective C,Ios,Cocoa Touch,Ipad,Core Graphics,我正在尝试使用UISlider为我正在制作的iPad应用程序学校项目更改画笔的大小,但我不知道如何更改 我已经有一个UISlider连接到它的插座和行动 这是我的刷子大小代码 CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound); CGContextSetLineWidth(UIGraphicsGetCurrentContext(), 25.0); CGContextSetRGBStroke

我正在尝试使用UISlider为我正在制作的iPad应用程序学校项目更改画笔的大小,但我不知道如何更改

我已经有一个UISlider连接到它的插座和行动

这是我的刷子大小代码

    CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
    CGContextSetLineWidth(UIGraphicsGetCurrentContext(), 25.0);
    CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), redAmt, greenAmt, blueAmt, alpha);
    CGContextMoveToPoint(UIGraphicsGetCurrentContext(), endingPoint.x, endingPoint.y);
    CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), endingPoint.x, endingPoint.y);
    CGContextStrokePath(UIGraphicsGetCurrentContext());
    CGContextFlush(UIGraphicsGetCurrentContext());
    touchDraw.image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
这一行:

CGContextSetLineWidth(UIGraphicsGetCurrentContext(), 25.0);
必须是这样的:

CGContextSetLineWidth(UIGraphicsGetCurrentContext(), self.brushSizeSlider.value);

其中,
brushSizeSlider
是连接到笔刷大小滑块的
IBOutlet
属性的名称。

我不确定是否了解您的意思。现在您只需将线宽设置为
25.0f
。为什么不在每次更改时将变量设置为
UISlider
的值,并将线宽设置为该值?

设置线宽即可。你能告诉我你是怎么画的吗?好了,先生,我编辑过了。这只是一个简单的绘图应用程序。当然,你也必须设置UISlider的最小值和最大值。@rob只是想说清楚,先生,IBOutlet不是iAction?因为XCode将其更改为“self->slider.value”@Cristiano,所以Ok有一个iAction方法,在更改滑块值时调用该方法。使用sender对象获取值。用于绘图。@Cristiano:您应该将
IBOutlet
宏放在属性上(如
@property(弱)IBOutlet UISlider*brushSizeSlider;
),而不是实例变量上。然后,在其他优势中,您可以控制您是否拥有(
strong
)或不拥有(
strong
)门店的价值。《资源规划指南》为门店的所有权政策提供了指导。与其每次都向滑块询问线宽,不如这样做。使用视图作为值的主存储是一种反模式。