Я новичок в разработке Swift и iOS в целом. Недавно я пытался использовать Swift для записи приложения iOS, которое использует CorePlot (который написан в ObjectiveC). Я попытался переписать образец кода CorePlot iOS (найденный в http://www.raywenderlich.com/13271/how-to-draw-graphs-with-core-plot-part-2) в Swift. Существует линия, как это в образце ObjectiveC:Как ObjectiveC mutableCopy работает в swift
CPTMutableLineStyle *aaplLineStyle = [aaplPlot.dataLineStyle mutableCopy];
aaplLineStyle.lineWidth = 2.5;
, что я пытался переписать так:
var lineStyle = aaplPlot.dataLineStyle.mutableCopy();
lineStyle.lineColor = aaplColor;
Проблема в том, я получаю ошибку компиляции в моей Swift версии кода, говоря
"cannot assign to 'lineColor' in 'lineStyle'".
я также получил предупреждение о том, что
"variable lineStyle inferred to have type 'AnyObject', which may be unexpected"
'applePlot'
, кстати, имеет тип CPTLineStyle определен как это в ObjectiveC:
@interface CPTLineStyle : NSObject<NSCoding, NSCopying, NSMutableCopying>
@property (nonatomic, readonly) CGLineCap lineCap;
@property (nonatomic, readonly) CGLineJoin lineJoin;
@property (nonatomic, readonly) CGFloat miterLimit;
@property (nonatomic, readonly) CGFloat lineWidth;
@property (nonatomic, readonly) NSArray *dashPattern;
@property (nonatomic, readonly) CGFloat patternPhase;
@property (nonatomic, readonly) CPTColor *lineColor;
@property (nonatomic, readonly) CPTFill *lineFill;
@property (nonatomic, readonly) CPTGradient *lineGradient;
@property (nonatomic, readonly, getter = isOpaque) BOOL opaque;
/// @name Factory Methods
/// @{
+(instancetype)lineStyle;
/// @}
/// @name Drawing
/// @{
-(void)setLineStyleInContext:(CGContextRef)context;
-(void)strokePathInContext:(CGContextRef)context;
-(void)strokeRect:(CGRect)rect inContext:(CGContextRef)context;
/// @}
@end
Может ли тело сказать мне, если я делаю что-то не так? Как правильно переписать эти строки кода быстро?
Благодаря
Еще раз спасибо. Я нашел его в конце концов, поэтому я удалил свой предыдущий комментарий с вопросом, где CPTMutableLineStyle, потому что я не видел, чтобы ваш комментарий отвечал на него. – trungdinhtrong