From 8ac5614684314066e8c6b87420092af44d416a1e Mon Sep 17 00:00:00 2001 From: Boris-Em Date: Wed, 27 Aug 2014 22:36:40 -0700 Subject: [PATCH] Fixed Issue with Color Background X-Axis and Frame - See second part of issue #62 --- Classes/BEMSimpleLineGraphView.m | 19 +++++++++++------- .../UserInterfaceState.xcuserstate | Bin 35523 -> 35286 bytes 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/Classes/BEMSimpleLineGraphView.m b/Classes/BEMSimpleLineGraphView.m index 1f51327..301b7c0 100644 --- a/Classes/BEMSimpleLineGraphView.m +++ b/Classes/BEMSimpleLineGraphView.m @@ -416,10 +416,10 @@ - (void)drawLine { line.enableRefrenceLines = YES; line.arrayOfVerticalRefrenceLinePoints = xAxisLabelPoints; line.arrayOfHorizontalRefrenceLinePoints = yAxisLabelPoints; - - line.frameOffset = self.XAxisLabelYOffset; } + line.frameOffset = self.XAxisLabelYOffset; + line.color = self.colorLine; line.animationTime = self.animationGraphEntranceTime; line.animationType = self.animationGraphStyle; @@ -584,15 +584,20 @@ - (void)drawXAxis { - (void)drawYAxis { for (UIView *subview in [self subviews]) { - if ([subview isKindOfClass:[UILabel class]] && subview.tag == 2000) + if ([subview isKindOfClass:[UILabel class]] && subview.tag == 2000) { [subview removeFromSuperview]; + } + else if ([subview isKindOfClass:[UIView class] ] && subview.tag == 2100) { + [subview removeFromSuperview]; + } } UIView *backgroundYaxis = [[UIView alloc]initWithFrame:CGRectMake(0, 0, labelYaxisOffset, self.frame.size.height)]; + backgroundYaxis.tag = 2100; if (self.colorBackgroundYaxis == nil) { - self.colorBackgroundYaxis = self.colorTop; - } - backgroundYaxis.backgroundColor = self.colorBackgroundYaxis; + backgroundYaxis.backgroundColor = self.colorTop; + } else backgroundYaxis.backgroundColor = self.colorBackgroundYaxis; + backgroundYaxis.alpha = self.alphaBackgroundYaxis; [self addSubview:backgroundYaxis]; @@ -789,7 +794,7 @@ - (void)reloadGraph { for (UIView *subviews in self.subviews) { [subviews removeFromSuperview]; } - + [self setNeedsLayout]; } diff --git a/Sample Project/SimpleLineChart.xcodeproj/project.xcworkspace/xcuserdata/bobo.xcuserdatad/UserInterfaceState.xcuserstate b/Sample Project/SimpleLineChart.xcodeproj/project.xcworkspace/xcuserdata/bobo.xcuserdatad/UserInterfaceState.xcuserstate index 34e1dad20dd4c163826ce30c156c6edb5b01cba2..6a81b5404f9d76c34cea98ca018701e300e9e28e 100644 GIT binary patch delta 15319 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 delta 15559 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 d)Dd$>tQ@g+#Aa(d902QI)+p=W-uDq({~rY&