From 1ba8ec9b3f9612b9529a1a22ba206ba24288d02b Mon Sep 17 00:00:00 2001 From: smartcodeboy <1149863953@qq.com> Date: Tue, 5 Mar 2019 11:10:47 +0800 Subject: [PATCH 1/2] Upgrade to swift 4.2 --- TKRadarChart.xcodeproj/project.pbxproj | 8 +++----- TKRadarChart/TKRadarChart.swift | 8 ++++---- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/TKRadarChart.xcodeproj/project.pbxproj b/TKRadarChart.xcodeproj/project.pbxproj index 687094a..abf832c 100644 --- a/TKRadarChart.xcodeproj/project.pbxproj +++ b/TKRadarChart.xcodeproj/project.pbxproj @@ -180,7 +180,7 @@ 6A3F39B41DEB1E1A0067576C = { CreatedOnToolsVersion = 8.1; DevelopmentTeam = 858CBVXSWP; - LastSwiftMigration = 0900; + LastSwiftMigration = 1010; ProvisioningStyle = Automatic; }; 6A415EEF1DEB1DAC001DBF69 = { @@ -299,8 +299,7 @@ SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -326,8 +325,7 @@ PRODUCT_BUNDLE_IDENTIFIER = com.play.TKRadarChart; PRODUCT_NAME = "$(TARGET_NAME)"; SKIP_INSTALL = YES; - SWIFT_SWIFT3_OBJC_INFERENCE = On; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; diff --git a/TKRadarChart/TKRadarChart.swift b/TKRadarChart/TKRadarChart.swift index 7d2be1a..a6cd539 100644 --- a/TKRadarChart/TKRadarChart.swift +++ b/TKRadarChart/TKRadarChart.swift @@ -205,7 +205,7 @@ public class TKRadarChart: UIView, TKRadarChartDelegate { let title = dataSource.titleOfRowForRadarChart(self, row: index) let pointOnEdge = CGPoint(x: centerPoint.x - radius * sin(i * perAngle), y: centerPoint.y - radius * cos(i * perAngle)) - let attributeTextSize = (title as NSString).size(withAttributes: [NSAttributedStringKey.font: textFont]) + let attributeTextSize = (title as NSString).size(withAttributes: [NSAttributedString.Key.font: textFont]) let width = attributeTextSize.width let xOffset = pointOnEdge.x >= centerPoint .x ? width / 2.0 + padding : -width / 2.0 - padding @@ -215,9 +215,9 @@ public class TKRadarChart: UIView, TKRadarChartDelegate { let paragraphStyle = NSParagraphStyle.default.mutableCopy() as! NSMutableParagraphStyle paragraphStyle.alignment = .center paragraphStyle.lineBreakMode = .byClipping - let attributes = [NSAttributedStringKey.font: textFont, - NSAttributedStringKey.paragraphStyle: paragraphStyle, - NSAttributedStringKey.foregroundColor: titleColor] + let attributes = [NSAttributedString.Key.font: textFont, + NSAttributedString.Key.paragraphStyle: paragraphStyle, + NSAttributedString.Key.foregroundColor: titleColor] /// Fix title offset if index == 0 || (numOfRow%2 == 0 && index == numOfRow/2){ From 1c0f8f52482449a4312be935f40e730d388ebf55 Mon Sep 17 00:00:00 2001 From: codeflow <1149863953@qq.com> Date: Wed, 18 Sep 2019 11:40:03 +0800 Subject: [PATCH 2/2] =?UTF-8?q?1.=E8=A7=A3=E5=86=B3=E8=A7=86=E5=9B=BE?= =?UTF-8?q?=E4=B8=8D=E5=B1=85=E4=B8=AD=E9=97=AE=E9=A2=98=202.=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E8=87=AA=E5=8A=A8=E8=AE=A1=E7=AE=97maxValue=E8=83=BD?= =?UTF-8?q?=E5=8A=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TKRadarChart/TKRadarChart.swift | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/TKRadarChart/TKRadarChart.swift b/TKRadarChart/TKRadarChart.swift index a6cd539..afb8a21 100644 --- a/TKRadarChart/TKRadarChart.swift +++ b/TKRadarChart/TKRadarChart.swift @@ -165,7 +165,8 @@ public class TKRadarChart: UIView, TKRadarChartDelegate { centerPoint = CGPoint.zero configuration = TKRadarChartConfig.defaultConfig() super.init(coder: aDecoder) - centerPoint = CGPoint(x: frame.width/2, y: frame.height/2) + // 解决视图不居中问题 + centerPoint = CGPoint(x: frame.size.width/2+frame.origin.x, y: frame.size.height/2+frame.origin.y) backgroundColor = UIColor.clear } @@ -185,6 +186,20 @@ public class TKRadarChart: UIView, TKRadarChartDelegate { let numOfRow = dataSource.numberOfRowForRadarChart(self) guard numOfRow > 0 else { return } + // 如果maxValue为默认值则从数据源中找到真正的maxValue + if configuration.maxValue == 5 { + let numOfSection = dataSource.numberOfSectionForRadarChart(self) + var max = configuration.maxValue + for section in 0.. max { + max = value + } + } + } + configuration.maxValue = max + } let textFont = delegate.fontOfTitleForRadarChart(self) let numOfSetp = max(dataSource.numberOfStepForRadarChart(self), 1)