From bfd93228d4da79ac734e18db2caa1f088c377b11 Mon Sep 17 00:00:00 2001 From: LiangXiao <18016139255@163.com> Date: Thu, 10 Aug 2017 15:28:04 +0800 Subject: [PATCH 1/3] test --- MoblieCQUPT_iOS.xcodeproj/project.pbxproj | 96 ++- .../CQUPTData/EmploymentRateViewController.m | 449 +++++++++++++- .../MostDifficultSubjectsViewController.m | 570 +++++++++++++++++- .../FreshMan_2017/CQUPTData/StatisticsTable.m | 2 +- .../MaleToFemaleRatioViewController.m | 98 ++- .../FreshMan_2017/StuStrategyDetailVC/0.png | Bin 0 -> 195920 bytes .../FreshMan_2017/StuStrategyDetailVC/1.jpg | Bin 0 -> 393901 bytes .../FreshMan_2017/StuStrategyDetailVC/1.png | Bin 0 -> 379044 bytes .../FreshMan_2017/StuStrategyDetailVC/2.png | Bin 0 -> 131111 bytes .../FreshMan_2017/StuStrategyDetailVC/3.png | Bin 0 -> 297922 bytes .../FreshMan_2017/StuStrategyDetailVC/4.png | Bin 0 -> 373929 bytes .../FreshMan_2017/StuStrategyDetailVC/5.png | Bin 0 -> 325782 bytes .../FreshMan_2017/StuStrategyDetailVC/6.png | Bin 0 -> 244211 bytes .../CampusEnvironmentCell.h | 18 + .../CampusEnvironmentCell.m | 60 ++ .../CampusEnvironmentViewController.m | 57 +- .../CanteenViewController.m | 54 +- .../StuStrategyDetailVC/MyTableViewCell.h | 20 + .../StuStrategyDetailVC/MyTableViewCell.m | 30 + .../StuStrategyDetailVC/MyTableViewCell.xib | 79 +++ .../StuBedroomCellTableViewCell.h | 20 + .../StuBedroomCellTableViewCell.m | 42 ++ .../StuBedroomCellTableViewCell.xib | 82 +++ .../StuBedroomViewController.m | 73 ++- 24 files changed, 1702 insertions(+), 48 deletions(-) create mode 100755 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/0.png create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/1.jpg create mode 100755 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/1.png create mode 100755 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/2.png create mode 100755 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/3.png create mode 100755 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/4.png create mode 100755 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/5.png create mode 100755 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/6.png create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/CampusEnvironmentCell.h create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/CampusEnvironmentCell.m create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/MyTableViewCell.h create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/MyTableViewCell.m create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/MyTableViewCell.xib create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/StuBedroomCellTableViewCell.h create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/StuBedroomCellTableViewCell.m create mode 100644 MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/StuBedroomCellTableViewCell.xib diff --git a/MoblieCQUPT_iOS.xcodeproj/project.pbxproj b/MoblieCQUPT_iOS.xcodeproj/project.pbxproj index b059ea6..5d74535 100755 --- a/MoblieCQUPT_iOS.xcodeproj/project.pbxproj +++ b/MoblieCQUPT_iOS.xcodeproj/project.pbxproj @@ -51,6 +51,19 @@ 6E1D6CB91F3966EF005ED0F3 /* 重邮风采@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 6E1D6C921F3966EF005ED0F3 /* 重邮风采@3x.png */; }; 6E1D6CBA1F3966EF005ED0F3 /* 黄色@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 6E1D6C931F3966EF005ED0F3 /* 黄色@2x.png */; }; 6E1D6CBB1F3966EF005ED0F3 /* 黄色@3x.png in Resources */ = {isa = PBXBuildFile; fileRef = 6E1D6C941F3966EF005ED0F3 /* 黄色@3x.png */; }; + 820FAC311F39A8FD008675C1 /* CampusEnvironmentCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 820FAC2F1F39A8FD008675C1 /* CampusEnvironmentCell.m */; }; + 8277AA801F3AED940010048B /* 3.png in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA791F3AED940010048B /* 3.png */; }; + 8277AA811F3AED940010048B /* 4.png in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA7A1F3AED940010048B /* 4.png */; }; + 8277AA821F3AED940010048B /* 0.png in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA7B1F3AED940010048B /* 0.png */; }; + 8277AA831F3AED940010048B /* 2.png in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA7C1F3AED940010048B /* 2.png */; }; + 8277AA841F3AED940010048B /* 1.png in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA7D1F3AED940010048B /* 1.png */; }; + 8277AA851F3AED940010048B /* 6.png in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA7E1F3AED940010048B /* 6.png */; }; + 8277AA861F3AED940010048B /* 5.png in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA7F1F3AED940010048B /* 5.png */; }; + 8277AA891F3AEFAA0010048B /* 1.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA881F3AEFAA0010048B /* 1.jpg */; }; + 8277AA8D1F3C146C0010048B /* StuBedroomCellTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8277AA8B1F3C146C0010048B /* StuBedroomCellTableViewCell.m */; }; + 8277AA8E1F3C146C0010048B /* StuBedroomCellTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA8C1F3C146C0010048B /* StuBedroomCellTableViewCell.xib */; }; + 8277AA921F3C36D10010048B /* MyTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8277AA901F3C36D10010048B /* MyTableViewCell.m */; }; + 8277AA931F3C36D10010048B /* MyTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8277AA911F3C36D10010048B /* MyTableViewCell.xib */; }; CE41EE121C1FE1A2004C873A /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE41EE111C1FE1A2004C873A /* ViewController.m */; }; CE4334471BE7C52D000C407D /* NotificationCenter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CE4334461BE7C52D000C407D /* NotificationCenter.framework */; }; CE43344D1BE7C52D000C407D /* TodayViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = CE43344C1BE7C52D000C407D /* TodayViewController.m */; }; @@ -539,8 +552,8 @@ 6E1D6C691F3966EF005ED0F3 /* StatisticsTable.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StatisticsTable.m; sourceTree = ""; }; 6E1D6C6A1F3966EF005ED0F3 /* HomePageViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomePageViewController.h; sourceTree = ""; }; 6E1D6C6B1F3966EF005ED0F3 /* HomePageViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HomePageViewController.m; sourceTree = ""; }; - 6E1D6C6C1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MaleToFemaleRatioViewController.h; sourceTree = ""; }; - 6E1D6C6D1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MaleToFemaleRatioViewController.m; sourceTree = ""; }; + 6E1D6C6C1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MaleToFemaleRatioViewController.h; path = ../MaleToFemaleRatioViewController.h; sourceTree = ""; }; + 6E1D6C6D1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MaleToFemaleRatioViewController.m; path = ../MaleToFemaleRatioViewController.m; sourceTree = ""; }; 6E1D6C6E1F3966EF005ED0F3 /* SegmentView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SegmentView.h; sourceTree = ""; }; 6E1D6C6F1F3966EF005ED0F3 /* SegmentView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SegmentView.m; sourceTree = ""; }; 6E1D6C711F3966EF005ED0F3 /* BeautyViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BeautyViewController.m; sourceTree = ""; }; @@ -579,6 +592,22 @@ 6E1D6C931F3966EF005ED0F3 /* 黄色@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "黄色@2x.png"; sourceTree = ""; }; 6E1D6C941F3966EF005ED0F3 /* 黄色@3x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "黄色@3x.png"; sourceTree = ""; }; 6E1D6CBC1F3967A2005ED0F3 /* BeautyViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = BeautyViewController.h; sourceTree = ""; }; + 820FAC2E1F39A8FD008675C1 /* CampusEnvironmentCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CampusEnvironmentCell.h; sourceTree = ""; }; + 820FAC2F1F39A8FD008675C1 /* CampusEnvironmentCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CampusEnvironmentCell.m; sourceTree = ""; }; + 8277AA791F3AED940010048B /* 3.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 3.png; sourceTree = ""; }; + 8277AA7A1F3AED940010048B /* 4.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 4.png; sourceTree = ""; }; + 8277AA7B1F3AED940010048B /* 0.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 0.png; sourceTree = ""; }; + 8277AA7C1F3AED940010048B /* 2.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 2.png; sourceTree = ""; }; + 8277AA7D1F3AED940010048B /* 1.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 1.png; sourceTree = ""; }; + 8277AA7E1F3AED940010048B /* 6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 6.png; sourceTree = ""; }; + 8277AA7F1F3AED940010048B /* 5.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = 5.png; sourceTree = ""; }; + 8277AA881F3AEFAA0010048B /* 1.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = 1.jpg; sourceTree = ""; }; + 8277AA8A1F3C146C0010048B /* StuBedroomCellTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StuBedroomCellTableViewCell.h; sourceTree = ""; }; + 8277AA8B1F3C146C0010048B /* StuBedroomCellTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StuBedroomCellTableViewCell.m; sourceTree = ""; }; + 8277AA8C1F3C146C0010048B /* StuBedroomCellTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = StuBedroomCellTableViewCell.xib; sourceTree = ""; }; + 8277AA8F1F3C36D10010048B /* MyTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyTableViewCell.h; sourceTree = ""; }; + 8277AA901F3C36D10010048B /* MyTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyTableViewCell.m; sourceTree = ""; }; + 8277AA911F3C36D10010048B /* MyTableViewCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MyTableViewCell.xib; sourceTree = ""; }; BA10D639E65F33ACE628A0EB /* Pods-MoblieCQUPT_iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MoblieCQUPT_iOS.release.xcconfig"; path = "Pods/Target Support Files/Pods-MoblieCQUPT_iOS/Pods-MoblieCQUPT_iOS.release.xcconfig"; sourceTree = ""; }; CE25501F1C15BD9500BCDDB8 /* ClassWidget.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = ClassWidget.entitlements; sourceTree = ""; }; CE41EE101C1FE1A2004C873A /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; @@ -1235,8 +1264,6 @@ 6E1D6C611F3966EF005ED0F3 /* CQUPTData */, 6E1D6C6A1F3966EF005ED0F3 /* HomePageViewController.h */, 6E1D6C6B1F3966EF005ED0F3 /* HomePageViewController.m */, - 6E1D6C6C1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.h */, - 6E1D6C6D1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.m */, 6E1D6C6E1F3966EF005ED0F3 /* SegmentView.h */, 6E1D6C6F1F3966EF005ED0F3 /* SegmentView.m */, 6E1D6C701F3966EF005ED0F3 /* StuStrategyDetailVC */, @@ -1268,6 +1295,8 @@ children = ( 6E1D6C621F3966EF005ED0F3 /* CQUPTDataRootViewController.h */, 6E1D6C631F3966EF005ED0F3 /* CQUPTDataRootViewController.m */, + 6E1D6C6C1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.h */, + 6E1D6C6D1F3966EF005ED0F3 /* MaleToFemaleRatioViewController.m */, 6E1D6C641F3966EF005ED0F3 /* EmploymentRateViewController.h */, 6E1D6C651F3966EF005ED0F3 /* EmploymentRateViewController.m */, 6E1D6C661F3966EF005ED0F3 /* MostDifficultSubjectsViewController.h */, @@ -1281,12 +1310,21 @@ 6E1D6C701F3966EF005ED0F3 /* StuStrategyDetailVC */ = { isa = PBXGroup; children = ( - 6E1D6CBC1F3967A2005ED0F3 /* BeautyViewController.h */, - 6E1D6C711F3966EF005ED0F3 /* BeautyViewController.m */, 6E1D6C721F3966EF005ED0F3 /* CampusEnvironmentViewController.h */, 6E1D6C731F3966EF005ED0F3 /* CampusEnvironmentViewController.m */, + 820FAC2E1F39A8FD008675C1 /* CampusEnvironmentCell.h */, + 820FAC2F1F39A8FD008675C1 /* CampusEnvironmentCell.m */, + 8277AA871F3AED9C0010048B /* 校园环境图标 */, + 6E1D6C7E1F3966EF005ED0F3 /* StuBedroomViewController.h */, + 6E1D6C7F1F3966EF005ED0F3 /* StuBedroomViewController.m */, + 8277AA8A1F3C146C0010048B /* StuBedroomCellTableViewCell.h */, + 8277AA8B1F3C146C0010048B /* StuBedroomCellTableViewCell.m */, + 8277AA8C1F3C146C0010048B /* StuBedroomCellTableViewCell.xib */, + 8277AA941F3C3E300010048B /* test */, 6E1D6C741F3966EF005ED0F3 /* CanteenViewController.h */, 6E1D6C751F3966EF005ED0F3 /* CanteenViewController.m */, + 6E1D6CBC1F3967A2005ED0F3 /* BeautyViewController.h */, + 6E1D6C711F3966EF005ED0F3 /* BeautyViewController.m */, 6E1D6C761F3966EF005ED0F3 /* DailyLifeViewController.h */, 6E1D6C771F3966EF005ED0F3 /* DailyLifeViewController.m */, 6E1D6C781F3966EF005ED0F3 /* FoodViewController.h */, @@ -1295,8 +1333,6 @@ 6E1D6C7B1F3966EF005ED0F3 /* IntroductionViewController.m */, 6E1D6C7C1F3966EF005ED0F3 /* QQGroupViewController.h */, 6E1D6C7D1F3966EF005ED0F3 /* QQGroupViewController.m */, - 6E1D6C7E1F3966EF005ED0F3 /* StuBedroomViewController.h */, - 6E1D6C7F1F3966EF005ED0F3 /* StuBedroomViewController.m */, 6E1D6C801F3966EF005ED0F3 /* StuStrategyRootViewController.h */, 6E1D6C811F3966EF005ED0F3 /* StuStrategyRootViewController.m */, ); @@ -1328,6 +1364,31 @@ path = "图标"; sourceTree = ""; }; + 8277AA871F3AED9C0010048B /* 校园环境图标 */ = { + isa = PBXGroup; + children = ( + 8277AA881F3AEFAA0010048B /* 1.jpg */, + 8277AA791F3AED940010048B /* 3.png */, + 8277AA7A1F3AED940010048B /* 4.png */, + 8277AA7B1F3AED940010048B /* 0.png */, + 8277AA7C1F3AED940010048B /* 2.png */, + 8277AA7D1F3AED940010048B /* 1.png */, + 8277AA7E1F3AED940010048B /* 6.png */, + 8277AA7F1F3AED940010048B /* 5.png */, + ); + name = "校园环境图标"; + sourceTree = ""; + }; + 8277AA941F3C3E300010048B /* test */ = { + isa = PBXGroup; + children = ( + 8277AA8F1F3C36D10010048B /* MyTableViewCell.h */, + 8277AA901F3C36D10010048B /* MyTableViewCell.m */, + 8277AA911F3C36D10010048B /* MyTableViewCell.xib */, + ); + name = test; + sourceTree = ""; + }; C66265BA2143171179039C97 /* Pods */ = { isa = PBXGroup; children = ( @@ -1423,6 +1484,7 @@ F242DA551EBCB2BB005AC411 /* MoblieCQUPT_iOS */ = { isa = PBXGroup; children = ( + F242DAFE1EBCB2BB005AC411 /* shake(give up) */, F242DA5C1EBCB2BB005AC411 /* Course */, F242DA6B1EBCB2BB005AC411 /* Finder */, F242DB8C1EBCB2BB005AC411 /* Login */, @@ -1485,13 +1547,12 @@ F242DA6B1EBCB2BB005AC411 /* Finder */ = { isa = PBXGroup; children = ( + F242DAC71EBCB2BB005AC411 /* RedrockWebsite */, F242DF831EBD9E2C005AC411 /* LostAndFound */, F242DA6C1EBCB2BB005AC411 /* Community */, F242DA941EBCB2BB005AC411 /* Map */, F242DA981EBCB2BB005AC411 /* Query */, - F242DAC71EBCB2BB005AC411 /* RedrockWebsite */, F242DACB1EBCB2BB005AC411 /* Resource */, - F242DAFE1EBCB2BB005AC411 /* shake(give up) */, F242DB021EBCB2BB005AC411 /* Shop */, 6E1D6C551F3966EF005ED0F3 /* FreshMan_2017 */, F242DA701EBCB2BB005AC411 /* FinderViewController.h */, @@ -1670,7 +1731,7 @@ F242DB011EBCB2BB005AC411 /* ShakeViewController.xib */, ); name = "shake(give up)"; - path = shake; + path = Finder/shake; sourceTree = ""; }; F242DB021EBCB2BB005AC411 /* Shop */ = { @@ -2707,6 +2768,7 @@ buildActionMask = 2147483647; files = ( F22286B21EED39840017516C /* icon_share_weibo@3x.png in Resources */, + 8277AA841F3AED940010048B /* 1.png in Resources */, F242DEF41EBCB2BC005AC411 /* 图片7.jpg in Resources */, F242DEF01EBCB2BC005AC411 /* 图片3.jpg in Resources */, F242DF341EBCB2BC005AC411 /* emptyClassTag2.png in Resources */, @@ -2715,12 +2777,14 @@ F242DFAF1EBD9E2C005AC411 /* LZIssueSucceedViewController.xib in Resources */, F242DE9B1EBCB2BC005AC411 /* 无课@3x.png in Resources */, F242DDC81EBCB2BB005AC411 /* cqupt3@2x.jpg in Resources */, + 8277AA851F3AED940010048B /* 6.png in Resources */, F242DDD81EBCB2BB005AC411 /* lost_image_lackplace@3x.png in Resources */, F242DE9E1EBCB2BC005AC411 /* 椭圆@2x.png in Resources */, F242DF3D1EBCB2BC005AC411 /* 期末成绩@2x.png in Resources */, F242DDE81EBCB2BB005AC411 /* lost_image_time@3x.png in Resources */, F242DE731EBCB2BC005AC411 /* remind0@2x.png in Resources */, F242DED81EBCB2BC005AC411 /* headImage.png in Resources */, + 8277AA821F3AED940010048B /* 0.png in Resources */, F242DDC91EBCB2BB005AC411 /* iconfont-shop1.png in Resources */, F242DF2D1EBCB2BC005AC411 /* iconfont-name.png in Resources */, F242DFA91EBD9E2C005AC411 /* DetailLostViewController.xib in Resources */, @@ -2781,6 +2845,7 @@ F242DE711EBCB2BC005AC411 /* add@2x.png in Resources */, F242DF3C1EBCB2BC005AC411 /* 我的动态@2x.png in Resources */, F242DDAC1EBCB2BB005AC411 /* doneImage.png in Resources */, + 8277AA801F3AED940010048B /* 3.png in Resources */, F242DE501EBCB2BC005AC411 /* Images.xcassets in Resources */, F242DDD11EBCB2BB005AC411 /* lost_image_infocategory@2x.png in Resources */, F242DF2B1EBCB2BC005AC411 /* iconfont_meizhou.png in Resources */, @@ -2794,6 +2859,7 @@ F242DE7D1EBCB2BC005AC411 /* 下拉@2x.png in Resources */, F242DE9A1EBCB2BC005AC411 /* 无课@2x.png in Resources */, F242DDEB1EBCB2BB005AC411 /* ok.png in Resources */, + 8277AA811F3AED940010048B /* 4.png in Resources */, 6E1D6CB41F3966EF005ED0F3 /* 邮子攻略@2x.png in Resources */, F22286B11EED39840017516C /* icon_share_weibo@2x.png in Resources */, F242DEAD1EBCB2BC005AC411 /* 返回箭头@3x.png in Resources */, @@ -2812,6 +2878,7 @@ F242DE8B1EBCB2BC005AC411 /* 多课0@3x.png in Resources */, F242DF1D1EBCB2BC005AC411 /* 40-2.png in Resources */, F242DF4B1EBCB2BC005AC411 /* iconfont-location.png in Resources */, + 8277AA831F3AED940010048B /* 2.png in Resources */, F242DD881EBCB2BB005AC411 /* LaunchScreen.xib in Resources */, F242DF251EBCB2BC005AC411 /* courseMengbi.jpg in Resources */, F242DE901EBCB2BC005AC411 /* 完成@2x.png in Resources */, @@ -2836,6 +2903,7 @@ F242DF351EBCB2BC005AC411 /* GQclass.png in Resources */, F2DC2ADD1EEEDC8000389A85 /* searchIcon@2x.png in Resources */, 6E1D6CB11F3966EF005ED0F3 /* 蓝色@3x.png in Resources */, + 8277AA931F3C36D10010048B /* MyTableViewCell.xib in Resources */, F242DEC41EBCB2BC005AC411 /* 1智妍.jpg in Resources */, F242DEAF1EBCB2BC005AC411 /* 选择@3x.png in Resources */, F242DDFD1EBCB2BB005AC411 /* MenuViewController.xib in Resources */, @@ -2912,6 +2980,7 @@ F242DDD01EBCB2BB005AC411 /* lost_image_describe@3x.png in Resources */, F242DF431EBCB2BC005AC411 /* icon_menu_2@2x.png in Resources */, F242DDD91EBCB2BB005AC411 /* lost_image_lacktel@2x.png in Resources */, + 8277AA861F3AED940010048B /* 5.png in Resources */, F242DE871EBCB2BC005AC411 /* 周数@3x.png in Resources */, F242DF2A1EBCB2BC005AC411 /* iconfont-titleTag.png in Resources */, F242DDC21EBCB2BB005AC411 /* reinstallImage.png in Resources */, @@ -2930,6 +2999,7 @@ F242DE7F1EBCB2BC005AC411 /* 不提醒@2x.png in Resources */, F242DDDE1EBCB2BB005AC411 /* lost_image_many@3x.png in Resources */, F242DF521EBCB2BC005AC411 /* splash.jpg in Resources */, + 8277AA891F3AEFAA0010048B /* 1.jpg in Resources */, F22286AF1EED39840017516C /* icon_share_more@3x.png in Resources */, F242DF211EBCB2BC005AC411 /* 智妍1.jpg in Resources */, F242DF491EBCB2BC005AC411 /* icon_menu_selected_4@2x.png in Resources */, @@ -2977,6 +3047,7 @@ F2BE9C1A1EDAEC7D00569A2B /* topic_image_join@3x.png in Resources */, F242DE861EBCB2BC005AC411 /* 周数@2x.png in Resources */, F242DEAE1EBCB2BC005AC411 /* 选择@2x.png in Resources */, + 8277AA8E1F3C146C0010048B /* StuBedroomCellTableViewCell.xib in Resources */, F242DDF61EBCB2BB005AC411 /* 电费查询@2x.png in Resources */, F242DDEE1EBCB2BB005AC411 /* shake@2x.png in Resources */, F242DEC71EBCB2BC005AC411 /* addPhoto.jpg in Resources */, @@ -3098,6 +3169,7 @@ F242DE6E1EBCB2BC005AC411 /* LessonHandle.m in Sources */, F242DF101EBCB2BC005AC411 /* MyMessagesViewController.m in Sources */, 6E1D6C9E1F3966EF005ED0F3 /* HomePageViewController.m in Sources */, + 820FAC311F39A8FD008675C1 /* CampusEnvironmentCell.m in Sources */, F242DEB61EBCB2BC005AC411 /* RemindNotification.m in Sources */, F2DA60C51ED033E40049E681 /* TopicModel.m in Sources */, F242DE6C1EBCB2BC005AC411 /* TimeChooseViewController.m in Sources */, @@ -3174,6 +3246,7 @@ F242DE6B1EBCB2BC005AC411 /* LessonController.m in Sources */, F242DF0B1EBCB2BC005AC411 /* MyInfoModel.m in Sources */, F242DD8C1EBCB2BB005AC411 /* CourseViewController.m in Sources */, + 8277AA921F3C36D10010048B /* MyTableViewCell.m in Sources */, F242DF041EBCB2BC005AC411 /* EmptyClassViewController.m in Sources */, F242DF7F1EBCB2BC005AC411 /* ORWRequestCache.m in Sources */, F242DE541EBCB2BC005AC411 /* VerifyMyInfoViewController.m in Sources */, @@ -3182,6 +3255,7 @@ F242DE5C1EBCB2BC005AC411 /* DetailRemindTableViewCell.m in Sources */, 6E1D6C9C1F3966EF005ED0F3 /* MostDifficultSubjectsViewController.m in Sources */, F242DED91EBCB2BC005AC411 /* MBCommentModel.m in Sources */, + 8277AA8D1F3C146C0010048B /* StuBedroomCellTableViewCell.m in Sources */, F242DEE81EBCB2BC005AC411 /* MBSegmentedView.m in Sources */, F242DEE71EBCB2BC005AC411 /* MBReplyView.m in Sources */, F242DE001EBCB2BB005AC411 /* ShopTableViewCell.m in Sources */, diff --git a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/EmploymentRateViewController.m b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/EmploymentRateViewController.m index ff9fa66..d478e8e 100644 --- a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/EmploymentRateViewController.m +++ b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/EmploymentRateViewController.m @@ -6,9 +6,26 @@ // Copyright © 2017年 topkid. All rights reserved. // +#import "OriginalCY.h" +#import "StatisticsTable.h" +#import #import "EmploymentRateViewController.h" -@interface EmploymentRateViewController () +#define KHEIGHT [UIScreen mainScreen].bounds.size.height +#define KWIDTH [UIScreen mainScreen].bounds.size.width + +@interface EmploymentRateViewController () + +@property (strong, nonatomic) UIPickerView *pickerView; +@property (strong, nonatomic) UIButton *collegeBtn; +@property (strong, nonatomic) UIToolbar *toolBar; +@property (strong, nonatomic) UIView *backgroundGrayView;//遮盖来显示灰色的view +@property (strong, nonatomic) UIView *rootView;//放置toolBar和pickerView的view +@property (strong, nonatomic) UIView *blueView;//pickerView每一个cell的背景色view +@property (strong, nonatomic) NSArray *collegeArray;//学院数组 +@property (strong, nonatomic) NSArray *employmentRatio; +@property (strong, nonatomic) StatisticsTable *circle;//动画view +@property NSInteger didSeclecter; @end @@ -16,7 +33,418 @@ @implementation EmploymentRateViewController - (void)viewDidLoad { [super viewDidLoad]; - // Do any additional setup after loading the view. + self.collegeArray = @[@"生物信息学院", @"传媒艺术学院", @"先进制造工程学院", @"计算机科学与技术学院", @"理学院", @"体育学院", @"光电工程学院/重庆国际半导体学院", @"软件工程学院", @"经济管理学院", @"通信与信息工程学院", @"自动化学院", @"外国语学院", @"法学院"]; + self.employmentRatio = @[@"0.9724", @"0.9647", @"0.9661", @"0.9613", @"0.9593", @"0.9559", @"0.9553", @"0.9371", @"0.9231", @"0.9231", @"0.9104", @"0.8611", @"0.7222"]; + + + [self layoutAnimateView]; + [self layoutPickerView]; + [self layoutCollegeButton]; +} + +- (void)layoutAnimateView { + NSArray *buleColor = @[COLOR_BULE1, COLOR_BULE2, COLOR_BULE3,COLOR_BULE4]; + NSArray *greenColor = @[COLOR_GREEN1, COLOR_GREEN2, COLOR_GREEN3,COLOR_GREEN4]; + // NSArray *yellowColor = @[COLOR_YELLOW1, COLOR_YELLOW2, COLOR_YELLOW3,COLOR_YELLOW4]; +// NSArray *pinkColor = @[COLOR_PINK1, COLOR_PINK2, COLOR_PINK3,COLOR_PINK4]; + NSArray *color = @[buleColor, greenColor]; + //距离左右各90,上下平分 + double width = KWIDTH - 180; + double height = width; + StatisticsTable *circle = [[StatisticsTable alloc ]initWithFrame:CGRectMake((KWIDTH - width) / 2.0, (KHEIGHT - 44 - 20 - 47 - height) / 2.0 - 25, width, height) With:color]; + self.circle = circle; + self.circle.backgroundColor = [UIColor whiteColor]; + + [self.view addSubview:self.circle]; +} + + +- (void)addAnimateWithEmploymentRatio:(double)employment UnemploymentRatio:(double)unemployment { + NSArray *buleColor = @[COLOR_BULE1, COLOR_BULE2, COLOR_BULE3,COLOR_BULE4]; + NSArray *greenColor = @[COLOR_GREEN1, COLOR_GREEN2, COLOR_GREEN3,COLOR_GREEN4]; + // NSArray *yellowColor = @[COLOR_YELLOW1, COLOR_YELLOW2, COLOR_YELLOW3,COLOR_YELLOW4]; + // NSArray *pinkColor = @[COLOR_PINK1, COLOR_PINK2, COLOR_PINK3,COLOR_PINK4]; + NSArray *color = @[buleColor, greenColor]; + + NSNumber *num1 = [NSNumber numberWithDouble:employment]; + NSNumber *num2 = [NSNumber numberWithDouble:unemployment]; + NSDictionary *class1 = @{@"name":@"已就业", @"score": num1}; + NSDictionary *class2 = @{@"name":@"未就业", @"score": num2}; + NSArray *detail = @[class1, class2]; + + //距离左右各90,上下平分 + double width = KWIDTH - 180; + double height = width; + StatisticsTable *circle = [[StatisticsTable alloc ]initWithFrame:CGRectMake((KWIDTH - width) / 2.0, (KHEIGHT - 44 - 20 - 47 - height) / 2.0 - 25, width, height) With:color]; + self.circle = circle; + + [self.circle drawLinesWithDetail:detail With:color]; + self.circle.backgroundColor = [UIColor whiteColor]; + + + [self.view addSubview:self.circle]; + + //让选择器在最上面 + [self.view bringSubviewToFront:self.rootView]; +} + + +- (void)layoutCollegeButton { + UIButton *btn = [[UIButton alloc] init]; + btn.backgroundColor = [UIColor colorWithRed:235/255.0 green:245/255.0 blue:250/255.0 alpha:1.0]; + btn.layer.borderWidth = 1; + btn.layer.borderColor = [UIColor colorWithRed:233/255.0 green:233/255.0 blue:233/255.0 alpha:1.0].CGColor; + btn.translatesAutoresizingMaskIntoConstraints = NO; + btn.layer.cornerRadius = 20; + + [btn setTitle:@"请选择学院" forState:UIControlStateNormal]; + [btn setTitleColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.5] forState:UIControlStateNormal]; + //左对齐 + btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; + //让向右偏移16像素,不会紧贴着很难看 + btn.titleEdgeInsets = UIEdgeInsetsMake(0, 16, 0, 0); + + [btn addTarget:self action:@selector(tapCollegeBtn) forControlEvents:UIControlEventTouchUpInside]; + + btn.titleLabel.font = [UIFont systemFontOfSize:14.0]; + [btn setTitleColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.5] forState:UIControlStateNormal]; + + + [self.view addSubview:btn]; + self.collegeBtn = btn; + + /* + 输出显示这两个值为0 + 实际值 + self.navigationController.navigationBar.frame.size.height = 44 + [[TopTabView alloc] init].frame.size.height = 47 + 状态栏20 + + double top = 131 - [[TopTabView alloc] init].frame.size.height - self.navigationController.navigationBar.frame.size.height - 20; + */ + + NSLayoutConstraint *topConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1.0 constant:137 - 44 - 47- 20]; + [self.view addConstraint:topConstraint]; + + NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeLeft multiplier:1.0 constant:18]; + [self.view addConstraint:leftConstraint]; + + NSLayoutConstraint *rightConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeRight multiplier:1.0 constant:-18]; + [self.view addConstraint:rightConstraint]; + + + double height = 41 / 340.0 * ([UIScreen mainScreen].bounds.size.width - 36); + + NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:height]; + [self.view addConstraint:heightConstraint]; +} + + +- (void)tapCollegeBtn { + if (!self.rootView) { + [self layoutPickerView]; + } + self.rootView.alpha = 1; + self.rootView.backgroundColor = [UIColor whiteColor]; + + //获取window + UIWindow *window = [UIApplication sharedApplication].keyWindow; + self.backgroundGrayView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; + + //创建遮盖view + self.backgroundGrayView = [[UIView alloc] init]; + [window addSubview:self.backgroundGrayView]; + self.backgroundGrayView.translatesAutoresizingMaskIntoConstraints = NO; + self.backgroundGrayView.backgroundColor = [UIColor colorWithRed:153/255.0 green:153/255.0 blue:153/255.0 alpha:0.7]; + + NSLayoutConstraint *height = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.height - self.rootView.bounds.size.height - 20]; + [self.backgroundGrayView addConstraint:height]; + + NSLayoutConstraint *width = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.width]; + [self.backgroundGrayView addConstraint:width]; + + NSLayoutConstraint *bottom = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:window attribute:NSLayoutAttributeBottom multiplier:1.0 constant:-self.pickerView.bounds.size.height]; + [window addConstraint:bottom]; + + //显示选择器界面 + self.pickerView.hidden = NO; + self.toolBar.hidden = NO; + self.blueView.hidden = NO; + +#pragma mark - 手势 + //添加返回手势 + UITapGestureRecognizer *tapToBackGesture = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapToBackAction)]; + [self.backgroundGrayView addGestureRecognizer:tapToBackGesture]; +} + +- (void)tapToBackAction { + NSInteger i = [self.pickerView selectedRowInComponent:0]; + NSLog(@"----> %ld", (long)i); + if (self.pickerView.hidden == YES) { + ; + } + else { + self.pickerView.hidden = YES; + self.toolBar.hidden = YES; + self.blueView.hidden = YES; + self.rootView.alpha = 0; + } + + [self.backgroundGrayView removeFromSuperview]; +} + +- (void)tapPickerBtn { + if (self.pickerView.hidden == YES) { + ; + } + else { + self.pickerView.hidden = YES; + self.toolBar.hidden = YES; + self.blueView.hidden = YES; + self.rootView.alpha = 0; + } + + NSInteger row = [self.pickerView selectedRowInComponent:0]; + +//先移除已有的图,再创建新的 + [self.circle removeFromSuperview]; + + [self.backgroundGrayView removeFromSuperview]; + +#pragma mark - 网络请求 + //网络请求 +// NSDictionary *parameters = @{ +// @"RequestType":@"SexRatio" +// }; +// +// NSString *url = @"http://www.yangruixin.com/test/apiRatio.php"; +// +// AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; +// manager.responseSerializer = [AFJSONResponseSerializer serializer]; +// manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/html",@"text/plain", nil]; +// [manager POST:url parameters:parameters success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseobject) { +// NSDictionary *dic = responseobject; +// // NSLog(@"%@", dic); +// //male +// double male = [dic[@"Data"][row][@"MenRatio"] doubleValue]; +// //female +// double female = [dic[@"Data"][row][@"WomenRatio"] doubleValue]; +// [self addAnimateWithMale:male Female:female]; +// }failure:^(NSURLSessionDataTask * _Nonnull task, NSError * _Nonnull error) { +// NSLog(@"请求失败,error:%@", error); +// }]; + double employment = [self.employmentRatio[row] doubleValue]; + double unemployment = 1 - employment; + [self addAnimateWithEmploymentRatio:employment UnemploymentRatio:unemployment]; +} + + +- (void)layoutPickerView { + +#pragma mark - rootView + // pickerView和toolBar放在这一个view上 + UIView *rootView = [[UIView alloc] init]; + + rootView.translatesAutoresizingMaskIntoConstraints = NO; + [self.view addSubview:rootView]; + self.rootView = rootView; + + //布局rootView + double height = 226 / 375.0 * [UIScreen mainScreen].bounds.size.width; + + NSLayoutConstraint *widthConstraint1 = [NSLayoutConstraint constraintWithItem:rootView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:[UIScreen mainScreen].bounds.size.width]; + [rootView addConstraint:widthConstraint1]; + + + NSLayoutConstraint *heightConstraint1 = [NSLayoutConstraint constraintWithItem:rootView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:height]; + [rootView addConstraint:heightConstraint1]; + + NSLayoutConstraint *bottomConstraint1 = [NSLayoutConstraint constraintWithItem:rootView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0]; + [self.view addConstraint:bottomConstraint1]; + + //创建背景 一条蓝色view + UIView *blueView = [[UIView alloc] init]; + blueView.hidden = YES; + blueView.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1]; + blueView.translatesAutoresizingMaskIntoConstraints = NO; + [rootView addSubview:blueView]; + self.blueView = blueView; + + NSLayoutConstraint *widthCons = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.width]; + [blueView addConstraint:widthCons]; + + NSLayoutConstraint *heightCons = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:35]; + [blueView addConstraint:heightCons]; + + NSLayoutConstraint *topCons = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:rootView attribute:NSLayoutAttributeTop multiplier:1.0 constant:height/2.0 - 35/2.0]; + [rootView addConstraint:topCons]; + + +#pragma mark - pickerView + //创建pickerView + UIPickerView *pickerView = [[UIPickerView alloc] init]; + // pickerView.alpha = 0.3; + //不影响子视图透明度用[UIColor colorWithRed:1 green:1 blue:1 alpha:0.3]设置透明度 + pickerView.backgroundColor = [UIColor colorWithRed:1 green:1 blue:1 alpha:0.3]; + pickerView.translatesAutoresizingMaskIntoConstraints = NO; + pickerView.hidden = YES; + pickerView.showsSelectionIndicator = NO; + pickerView.delegate = self; + pickerView.dataSource = self; + self.pickerView = pickerView; + [rootView addSubview:pickerView]; + + + NSLayoutConstraint *widthConstraint = [NSLayoutConstraint constraintWithItem:pickerView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:[UIScreen mainScreen].bounds.size.width]; + [pickerView addConstraint:widthConstraint]; + + + NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:pickerView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:height]; + [pickerView addConstraint:heightConstraint]; + + NSLayoutConstraint *bottomConstraint = [NSLayoutConstraint constraintWithItem:pickerView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0]; + [self.view addConstraint:bottomConstraint]; + + +#pragma mark - toolBar + //完成按钮放工具栏 + UIToolbar *toolBar = [[UIToolbar alloc] init]; + // UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 375, 35)]; + toolBar.translatesAutoresizingMaskIntoConstraints = NO; + [rootView addSubview:toolBar]; + toolBar.barTintColor = [UIColor whiteColor]; + toolBar.clearsContextBeforeDrawing = YES; + toolBar.hidden = YES; + self.toolBar = toolBar; + + + NSLayoutConstraint *widthConstraint2 = [NSLayoutConstraint constraintWithItem:toolBar attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:[UIScreen mainScreen].bounds.size.width]; + [toolBar addConstraint:widthConstraint2]; + + + NSLayoutConstraint *heightConstraint2 = [NSLayoutConstraint constraintWithItem:toolBar attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:40]; + [toolBar addConstraint:heightConstraint2]; + + NSLayoutConstraint *topConstraint2 = [NSLayoutConstraint constraintWithItem:toolBar attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:rootView attribute:NSLayoutAttributeTop multiplier:1.0 constant:0]; + [rootView addConstraint:topConstraint2]; + + +#pragma mark - toolBar's button + //toolBar上添加一个button + UIButton *toolBtn = [[UIButton alloc] init]; + toolBtn.translatesAutoresizingMaskIntoConstraints = NO; + toolBtn.backgroundColor = [UIColor whiteColor]; + [toolBtn setTitle:@"完成" forState:UIControlStateNormal]; + [toolBar addSubview:toolBtn]; + [toolBtn setTitleColor:[UIColor colorWithRed:129/255.0 green:192255.0 blue:254/255.0 alpha:1] forState:UIControlStateNormal]; + toolBtn.titleLabel.font = [UIFont systemFontOfSize:15.0]; + [toolBtn addTarget:self action:@selector(tapPickerBtn) forControlEvents:UIControlEventTouchUpInside]; + + NSLayoutConstraint *widthConstraint3 = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:39]; + [toolBtn addConstraint:widthConstraint3]; + + + NSLayoutConstraint *heightConstraint3 = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:24]; + [toolBtn addConstraint:heightConstraint3]; + + NSLayoutConstraint *right = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:toolBar attribute:NSLayoutAttributeRight multiplier:1.0 constant:-10]; + [toolBar addConstraint:right]; + + NSLayoutConstraint *top = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:toolBar attribute:NSLayoutAttributeTop multiplier:1.0 constant:10]; + [toolBar addConstraint:top]; +} + +//1个表盘 +-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView +{ + return 1; +} + + +//指定每个表盘上有几行数据 +-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component +{ + return self.collegeArray.count; +} + +- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component { + return 40; +} + +//- (NSString *)pickerView:(UIPickerView *)pickerView +//titleForRow:(NSInteger)row forComponent:(NSInteger)component +//{ +// return @"jjkl";; +//} + + +//- (NSAttributedString *)pickerView:(UIPickerView *)pickerView attributedTitleForRow:(NSInteger)row forComponent:(NSInteger)component{ +// +// NSDictionary * attrDic = @{NSForegroundColorAttributeName:[UIColor blueColor]}; +// +// NSAttributedString * attrString = [[NSAttributedString alloc] initWithString:@"123" attributes:attrDic]; +// return attrString; +//} + + +- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{ + UIView *myView= [[UIView alloc]init]; + myView.backgroundColor= [UIColor clearColor]; + + UILabel *myLabel = [[UILabel alloc] init]; + myLabel.text = self.collegeArray[row]; + myLabel.translatesAutoresizingMaskIntoConstraints = NO; + myLabel.textAlignment = NSTextAlignmentCenter; + myLabel.font = [UIFont systemFontOfSize:14]; + [myView addSubview:myLabel]; + + //选中行改变颜色、字体大小 + if (self.didSeclecter == row) { + myLabel.textColor = [UIColor whiteColor]; + myLabel.font = [UIFont systemFontOfSize:17]; + } + else { + myLabel.textColor = [UIColor grayColor]; + } + + + + NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeLeft multiplier:1.0 constant:0]; + [myView addConstraint:leftConstraint]; + + NSLayoutConstraint *rightConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeRight multiplier:1.0 constant:0]; + [myView addConstraint:rightConstraint]; + + + + NSLayoutConstraint *topConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeTop multiplier:1.0 constant:9]; + [myView addConstraint:topConstraint]; + + NSLayoutConstraint *bottomConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeBottom multiplier:1.0 constant:-10]; + [myView addConstraint:bottomConstraint]; + + for (UIView *view in pickerView.subviews) { + if (view.frame.size.height<1) { + view.backgroundColor = [UIColor clearColor]; + } + } + + return myView; +} + +- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{ + // UIView *firstView = [pickerView viewForRow:0 forComponent:component]; + // UIView *v = [pickerView viewForRow:row forComponent:component]; + // v.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1.0]; + // + // UIView *v2 = [pickerView viewForRow:row + 1 forComponent:component]; + // v2.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1.0]; + // + // UIView *v0 = [pickerView viewForRow:row-1 forComponent:component]; + // v0.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1.0]; + + self.didSeclecter = row; + [self.pickerView reloadAllComponents]; } - (void)didReceiveMemoryWarning { @@ -24,14 +452,15 @@ - (void)didReceiveMemoryWarning { // Dispose of any resources that can be recreated. } -/* -#pragma mark - Navigation -// In a storyboard-based application, you will often want to do a little preparation before navigation -- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { - // Get the new view controller using [segue destinationViewController]. - // Pass the selected object to the new view controller. -} -*/ +/* + #pragma mark - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { + // Get the new view controller using [segue destinationViewController]. + // Pass the selected object to the new view controller. + } + */ @end diff --git a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/MostDifficultSubjectsViewController.m b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/MostDifficultSubjectsViewController.m index d110c2d..cac999b 100644 --- a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/MostDifficultSubjectsViewController.m +++ b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/MostDifficultSubjectsViewController.m @@ -6,9 +6,33 @@ // Copyright © 2017年 topkid. All rights reserved. // +#import "OriginalCY.h" +#import "StatisticsTable.h" +#import #import "MostDifficultSubjectsViewController.h" -@interface MostDifficultSubjectsViewController () +#define KHEIGHT [UIScreen mainScreen].bounds.size.height +#define KWIDTH [UIScreen mainScreen].bounds.size.width + +@interface MostDifficultSubjectsViewController () + +@property (strong, nonatomic) UIPickerView *pickerView; +@property (strong, nonatomic) UIButton *collegeBtn; +@property (strong, nonatomic) UIButton *subjectBtn; +@property (strong, nonatomic) UIToolbar *toolBar; +@property (strong, nonatomic) UIView *backgroundGrayView;//遮盖来显示灰色的view +@property (strong, nonatomic) UIView *rootView;//放置toolBar和pickerView的view +@property (strong, nonatomic) UIView *blueView;//pickerView每一个cell的背景色view +@property (strong, nonatomic) NSArray *collegeArray;//学院数组 +@property (strong, nonatomic) NSArray *subjectArray;//专业数组 +@property (strong, nonatomic) NSArray *courseArray;//课程数组 + +@property (strong, nonatomic) StatisticsTable *circle;//动画view +//@property NSInteger didSeclecter; +@property BOOL isCollege; +@property BOOL shouldTapCollege; +@property NSInteger rowForCollege; +@property NSInteger rowForSubject; @end @@ -16,7 +40,532 @@ @implementation MostDifficultSubjectsViewController - (void)viewDidLoad { [super viewDidLoad]; - // Do any additional setup after loading the view. + self.collegeArray = @[@"经济管理学院", @"通信与信息工程学院", @"经济管理学院", @"计算机科学与技术学院", @"外国语学院", @"生物信息学院", @"网络空间安全与信息法学院", @"自动化学院", @"先进制造工程学院", @"体育学院", @"理学院", @"传媒艺术学院", @"软件工程学院", @"国际半导体学院", @"国际学院", @"全校"]; + self.subjectArray = + @[ + @[@"工商管理类", @"工程管理"], @[@"广电与数字媒体类", @""] + ]; + + self.courseArray = + @[ + @[ + @[@"高等数学B(下)", @"线性代数B"], @[@"C语言程序设计", @"高等数学B(下)",@"线性代数B"] + ], + @[@"高等数学A(下)", @"大学物理A(上)", @"线性代数A"] + ]; + + self.isCollege = YES; + self.shouldTapCollege = YES; + [self layoutAnimateView]; + [self layoutPickerView]; + [self layoutCollegeButton]; + [self layoutSubjectButton]; +} + +- (void)layoutAnimateView { + NSArray *buleColor = @[COLOR_BULE1, COLOR_BULE2, COLOR_BULE3,COLOR_BULE4]; + // NSArray *greenColor = @[COLOR_GREEN1, COLOR_GREEN2, COLOR_GREEN3,COLOR_GREEN4]; + // NSArray *yellowColor = @[COLOR_YELLOW1, COLOR_YELLOW2, COLOR_YELLOW3,COLOR_YELLOW4]; + NSArray *pinkColor = @[COLOR_PINK1, COLOR_PINK2, COLOR_PINK3,COLOR_PINK4]; + NSArray *color = @[buleColor, pinkColor]; + //距离左右各90,上下平分 + double width = KWIDTH - 180; + double height = width; + StatisticsTable *circle = [[StatisticsTable alloc ]initWithFrame:CGRectMake((KWIDTH - width) / 2.0, (KHEIGHT - 44 - 20 - 47 - height) / 2.0 - 25, width, height) With:color]; + self.circle = circle; + self.circle.backgroundColor = [UIColor whiteColor]; + + [self.view addSubview:self.circle]; +} + + +//- (void)addAnimateWithClass1:(NSDictionary *)class1 Class2:(NSDictionary *)female Class3:(NSDictionary *)class3{ +// NSArray *buleColor = @[COLOR_BULE1, COLOR_BULE2, COLOR_BULE3,COLOR_BULE4]; +// // NSArray *greenColor = @[COLOR_GREEN1, COLOR_GREEN2, COLOR_GREEN3,COLOR_GREEN4]; +// NSArray *yellowColor = @[COLOR_YELLOW1, COLOR_YELLOW2, COLOR_YELLOW3,COLOR_YELLOW4]; +// NSArray *pinkColor = @[COLOR_PINK1, COLOR_PINK2, COLOR_PINK3,COLOR_PINK4]; +// +// NSArray *color = @[buleColor, pinkColor, yellowColor]; +// +// NSNumber *num1 = [NSNumber numberWithDouble:male]; +// NSNumber *num2 = [NSNumber numberWithDouble:female]; +// NSDictionary *class1 = @{@"name":@"男", @"score": num1}; +// NSDictionary *class2 = @{@"name":@"女", @"score": num2}; +// NSArray *detail = @[class1, class2]; +// +// //距离左右各90,上下平分 +// double width = KWIDTH - 180; +// double height = width; +// StatisticsTable *circle = [[StatisticsTable alloc ]initWithFrame:CGRectMake((KWIDTH - width) / 2.0, (KHEIGHT - 44 - 20 - 47 - height) / 2.0 - 25, width, height) With:color]; +// self.circle = circle; +// +// [self.circle drawLinesWithDetail:detail With:color]; +// self.circle.backgroundColor = [UIColor whiteColor]; +// +// +// [self.view addSubview:self.circle]; +// +// //让选择器在最上面 +// [self.view bringSubviewToFront:self.rootView]; +//} + + +- (void)layoutCollegeButton { + UIButton *btn = [[UIButton alloc] init]; + btn.backgroundColor = [UIColor colorWithRed:235/255.0 green:245/255.0 blue:250/255.0 alpha:1.0]; + btn.layer.borderWidth = 1; + btn.layer.borderColor = [UIColor colorWithRed:233/255.0 green:233/255.0 blue:233/255.0 alpha:1.0].CGColor; + btn.translatesAutoresizingMaskIntoConstraints = NO; + btn.layer.cornerRadius = 20; + + [btn setTitle:@"请选择学院" forState:UIControlStateNormal]; + [btn setTitleColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.5] forState:UIControlStateNormal]; + //左对齐 + btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; + //让向右偏移16像素,不会紧贴着很难看 + btn.titleEdgeInsets = UIEdgeInsetsMake(0, 16, 0, 0); + + [btn addTarget:self action:@selector(tapCollegeBtn) forControlEvents:UIControlEventTouchUpInside]; + + btn.titleLabel.font = [UIFont systemFontOfSize:14.0]; + [btn setTitleColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.5] forState:UIControlStateNormal]; + + + [self.view addSubview:btn]; + self.collegeBtn = btn; + + /* + 输出显示这两个值为0 + 实际值 + self.navigationController.navigationBar.frame.size.height = 44 + [[TopTabView alloc] init].frame.size.height = 47 + 状态栏20 + + double top = 131 - [[TopTabView alloc] init].frame.size.height - self.navigationController.navigationBar.frame.size.height - 20; + */ + + NSLayoutConstraint *topConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1.0 constant:137 - 44 - 47- 20]; + [self.view addConstraint:topConstraint]; + + NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeLeft multiplier:1.0 constant:18]; + [self.view addConstraint:leftConstraint]; + + NSLayoutConstraint *rightConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeRight multiplier:1.0 constant:-18]; + [self.view addConstraint:rightConstraint]; + + + double height = 41 / 340.0 * ([UIScreen mainScreen].bounds.size.width - 36); + + NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:height]; + [self.view addConstraint:heightConstraint]; +} + +- (void)layoutSubjectButton { + UIButton *btn = [[UIButton alloc] init]; + btn.backgroundColor = [UIColor colorWithRed:235/255.0 green:245/255.0 blue:250/255.0 alpha:1.0]; + btn.layer.borderWidth = 1; + btn.layer.borderColor = [UIColor colorWithRed:233/255.0 green:233/255.0 blue:233/255.0 alpha:1.0].CGColor; + btn.translatesAutoresizingMaskIntoConstraints = NO; + btn.layer.cornerRadius = 20; + + [btn setTitle:@"请选择专业" forState:UIControlStateNormal]; + [btn setTitleColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.5] forState:UIControlStateNormal]; + //左对齐 + btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; + //让向右偏移16像素,不会紧贴着很难看 + btn.titleEdgeInsets = UIEdgeInsetsMake(0, 16, 0, 0); + + [btn addTarget:self action:@selector(tapSubjectBtn) forControlEvents:UIControlEventTouchUpInside]; + + btn.titleLabel.font = [UIFont systemFontOfSize:14.0]; + [btn setTitleColor:[UIColor colorWithRed:0 green:0 blue:0 alpha:0.5] forState:UIControlStateNormal]; + + + [self.view addSubview:btn]; + self.subjectBtn = btn; + + NSLayoutConstraint *topConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1.0 constant:137 - 44 - 20 - 47 + 41 + 20]; + [self.view addConstraint:topConstraint]; + + NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeLeft multiplier:1.0 constant:18]; + [self.view addConstraint:leftConstraint]; + + NSLayoutConstraint *rightConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeRight multiplier:1.0 constant:-18]; + [self.view addConstraint:rightConstraint]; + + + double height = 41 / 340.0 * ([UIScreen mainScreen].bounds.size.width - 36); + + NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:btn attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:height]; + [self.view addConstraint:heightConstraint]; +} + + +- (void)tapCollegeBtn { + self.isCollege = YES; + if (!self.rootView) { + [self layoutPickerView]; + } + [self.pickerView reloadAllComponents]; + + + self.rootView.alpha = 1; + self.rootView.backgroundColor = [UIColor whiteColor]; + + //获取window + UIWindow *window = [UIApplication sharedApplication].keyWindow; + self.backgroundGrayView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; + + //创建遮盖view + self.backgroundGrayView = [[UIView alloc] init]; + [window addSubview:self.backgroundGrayView]; + self.backgroundGrayView.translatesAutoresizingMaskIntoConstraints = NO; + self.backgroundGrayView.backgroundColor = [UIColor colorWithRed:153/255.0 green:153/255.0 blue:153/255.0 alpha:0.7]; + + NSLayoutConstraint *height = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.height - self.rootView.bounds.size.height - 20]; + [self.backgroundGrayView addConstraint:height]; + + NSLayoutConstraint *width = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.width]; + [self.backgroundGrayView addConstraint:width]; + + NSLayoutConstraint *bottom = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:window attribute:NSLayoutAttributeBottom multiplier:1.0 constant:-self.pickerView.bounds.size.height]; + [window addConstraint:bottom]; + + //显示选择器界面 + self.pickerView.hidden = NO; + self.toolBar.hidden = NO; + self.blueView.hidden = NO; + +#pragma mark - 手势 + //添加返回手势 + UITapGestureRecognizer *tapToBackGesture = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapToBackAction)]; + [self.backgroundGrayView addGestureRecognizer:tapToBackGesture]; +} + +- (void)tapSubjectBtn { + if (self.shouldTapCollege) { + NSLog(@"should tap college");; + } + else { + if (!self.rootView) { + [self layoutPickerView]; + } + self.rootView.alpha = 1; + self.rootView.backgroundColor = [UIColor whiteColor]; + + self.isCollege = NO; + + //获取window + UIWindow *window = [UIApplication sharedApplication].keyWindow; + self.backgroundGrayView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; + + //创建遮盖view + self.backgroundGrayView = [[UIView alloc] init]; + [window addSubview:self.backgroundGrayView]; + self.backgroundGrayView.translatesAutoresizingMaskIntoConstraints = NO; + self.backgroundGrayView.backgroundColor = [UIColor colorWithRed:153/255.0 green:153/255.0 blue:153/255.0 alpha:0.7]; + + NSLayoutConstraint *height = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.height - self.rootView.bounds.size.height - 20]; + [self.backgroundGrayView addConstraint:height]; + + NSLayoutConstraint *width = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.width]; + [self.backgroundGrayView addConstraint:width]; + + NSLayoutConstraint *bottom = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:window attribute:NSLayoutAttributeBottom multiplier:1.0 constant:-self.pickerView.bounds.size.height]; + [window addConstraint:bottom]; + + //显示选择器界面 + self.pickerView.hidden = NO; + self.toolBar.hidden = NO; + self.blueView.hidden = NO; + + + //添加返回手势 + UITapGestureRecognizer *tapToBackGesture = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapToBackAction)]; + [self.backgroundGrayView addGestureRecognizer:tapToBackGesture]; + } +} + +- (void)tapToBackAction { + NSInteger i = [self.pickerView selectedRowInComponent:0]; + NSLog(@"----> %ld", (long)i); + if (self.pickerView.hidden == YES) { + ; + } + else { + self.pickerView.hidden = YES; + self.toolBar.hidden = YES; + self.blueView.hidden = YES; + self.rootView.alpha = 0; + } + + [self.backgroundGrayView removeFromSuperview]; +} + +- (void)tapPickerBtn { + if (_isCollege) { + if (self.pickerView.hidden == YES) { + ; + } + else { + self.pickerView.hidden = YES; + self.toolBar.hidden = YES; + self.blueView.hidden = YES; + self.rootView.alpha = 0; + } + [self.backgroundGrayView removeFromSuperview]; + self.isCollege = NO; + self.shouldTapCollege = NO; + NSInteger row = [self.pickerView selectedRowInComponent:0]; + + self.rowForCollege = row; + [self.pickerView reloadAllComponents]; + + } + else { + if (self.pickerView.hidden == YES) { + ; + } + else { + self.pickerView.hidden = YES; + self.toolBar.hidden = YES; + self.blueView.hidden = YES; + self.rootView.alpha = 0; + } + + [self.circle removeFromSuperview]; + + [self.backgroundGrayView removeFromSuperview]; +// [self addAnimateWithMale:<#(double)#> Female:<#(double)#>] + } +// [self.pickerView selectRow:0 inComponent:0 animated:NO]; +} + + +- (void)layoutPickerView { + +#pragma mark - rootView + // pickerView和toolBar放在这一个view上 + UIView *rootView = [[UIView alloc] init]; + + rootView.translatesAutoresizingMaskIntoConstraints = NO; + [self.view addSubview:rootView]; + self.rootView = rootView; + + //布局rootView + double height = 226 / 375.0 * [UIScreen mainScreen].bounds.size.width; + + NSLayoutConstraint *widthConstraint1 = [NSLayoutConstraint constraintWithItem:rootView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:[UIScreen mainScreen].bounds.size.width]; + [rootView addConstraint:widthConstraint1]; + + + NSLayoutConstraint *heightConstraint1 = [NSLayoutConstraint constraintWithItem:rootView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:height]; + [rootView addConstraint:heightConstraint1]; + + NSLayoutConstraint *bottomConstraint1 = [NSLayoutConstraint constraintWithItem:rootView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0]; + [self.view addConstraint:bottomConstraint1]; + + //创建背景 一条蓝色view + UIView *blueView = [[UIView alloc] init]; + blueView.hidden = YES; + blueView.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1]; + blueView.translatesAutoresizingMaskIntoConstraints = NO; + [rootView addSubview:blueView]; + self.blueView = blueView; + + NSLayoutConstraint *widthCons = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.width]; + [blueView addConstraint:widthCons]; + + NSLayoutConstraint *heightCons = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:35]; + [blueView addConstraint:heightCons]; + + NSLayoutConstraint *topCons = [NSLayoutConstraint constraintWithItem:blueView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:rootView attribute:NSLayoutAttributeTop multiplier:1.0 constant:height/2.0 - 35/2.0]; + [rootView addConstraint:topCons]; + + +#pragma mark - pickerView + //创建pickerView + UIPickerView *pickerView = [[UIPickerView alloc] init]; + // pickerView.alpha = 0.3; + //不影响子视图透明度用[UIColor colorWithRed:1 green:1 blue:1 alpha:0.3]设置透明度 + pickerView.backgroundColor = [UIColor colorWithRed:1 green:1 blue:1 alpha:0.3]; + pickerView.translatesAutoresizingMaskIntoConstraints = NO; + pickerView.hidden = YES; + pickerView.showsSelectionIndicator = NO; + pickerView.delegate = self; + pickerView.dataSource = self; + self.pickerView = pickerView; + [rootView addSubview:pickerView]; + + + NSLayoutConstraint *widthConstraint = [NSLayoutConstraint constraintWithItem:pickerView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:[UIScreen mainScreen].bounds.size.width]; + [pickerView addConstraint:widthConstraint]; + + + NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:pickerView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:height]; + [pickerView addConstraint:heightConstraint]; + + NSLayoutConstraint *bottomConstraint = [NSLayoutConstraint constraintWithItem:pickerView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0]; + [self.view addConstraint:bottomConstraint]; + + +#pragma mark - toolBar + //完成按钮放工具栏 + UIToolbar *toolBar = [[UIToolbar alloc] init]; + // UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 375, 35)]; + toolBar.translatesAutoresizingMaskIntoConstraints = NO; + [rootView addSubview:toolBar]; + toolBar.barTintColor = [UIColor whiteColor]; + toolBar.clearsContextBeforeDrawing = YES; + toolBar.hidden = YES; + self.toolBar = toolBar; + + + NSLayoutConstraint *widthConstraint2 = [NSLayoutConstraint constraintWithItem:toolBar attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:[UIScreen mainScreen].bounds.size.width]; + [toolBar addConstraint:widthConstraint2]; + + + NSLayoutConstraint *heightConstraint2 = [NSLayoutConstraint constraintWithItem:toolBar attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:40]; + [toolBar addConstraint:heightConstraint2]; + + NSLayoutConstraint *topConstraint2 = [NSLayoutConstraint constraintWithItem:toolBar attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:rootView attribute:NSLayoutAttributeTop multiplier:1.0 constant:0]; + [rootView addConstraint:topConstraint2]; + + +#pragma mark - toolBar's button + //toolBar上添加一个button + UIButton *toolBtn = [[UIButton alloc] init]; + toolBtn.translatesAutoresizingMaskIntoConstraints = NO; + toolBtn.backgroundColor = [UIColor whiteColor]; + [toolBtn setTitle:@"完成" forState:UIControlStateNormal]; + [toolBar addSubview:toolBtn]; + [toolBtn setTitleColor:[UIColor colorWithRed:129/255.0 green:192255.0 blue:254/255.0 alpha:1] forState:UIControlStateNormal]; + toolBtn.titleLabel.font = [UIFont systemFontOfSize:15.0]; + [toolBtn addTarget:self action:@selector(tapPickerBtn) forControlEvents:UIControlEventTouchUpInside]; + + NSLayoutConstraint *widthConstraint3 = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:39]; + [toolBtn addConstraint:widthConstraint3]; + + + NSLayoutConstraint *heightConstraint3 = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:0.0 constant:24]; + [toolBtn addConstraint:heightConstraint3]; + + NSLayoutConstraint *right = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:toolBar attribute:NSLayoutAttributeRight multiplier:1.0 constant:-10]; + [toolBar addConstraint:right]; + + NSLayoutConstraint *top = [NSLayoutConstraint constraintWithItem:toolBtn attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:toolBar attribute:NSLayoutAttributeTop multiplier:1.0 constant:10]; + [toolBar addConstraint:top]; +} + +//1个表盘 +-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView +{ + return 1; +} + + +//指定每个表盘上有几行数据 +-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component +{ + if (_isCollege) { + return self.collegeArray.count; + } + else { + return 3; + } +} + +- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component { + return 40; +} + +//- (NSString *)pickerView:(UIPickerView *)pickerView +//titleForRow:(NSInteger)row forComponent:(NSInteger)component +//{ +// return @"jjkl";; +//} + + +//- (NSAttributedString *)pickerView:(UIPickerView *)pickerView attributedTitleForRow:(NSInteger)row forComponent:(NSInteger)component{ +// +// NSDictionary * attrDic = @{NSForegroundColorAttributeName:[UIColor blueColor]}; +// +// NSAttributedString * attrString = [[NSAttributedString alloc] initWithString:@"123" attributes:attrDic]; +// return attrString; +//} + + +- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{ + UIView *myView= [[UIView alloc]init]; + myView.backgroundColor= [UIColor clearColor]; + + UILabel *myLabel = [[UILabel alloc] init]; + myLabel.translatesAutoresizingMaskIntoConstraints = NO; + myLabel.textAlignment = NSTextAlignmentCenter; + myLabel.font = [UIFont systemFontOfSize:14]; + [myView addSubview:myLabel]; + + if (_isCollege) { + myLabel.text = self.collegeArray[row]; + } + else { + myLabel.text = @"subject"; + } + + //选中行改变颜色、字体大小 + if (self.rowForSubject == row || self.rowForCollege == row) { + myLabel.textColor = [UIColor whiteColor]; + myLabel.font = [UIFont systemFontOfSize:17]; + } + else { + myLabel.textColor = [UIColor grayColor]; + } + + + + NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeLeft multiplier:1.0 constant:0]; + [myView addConstraint:leftConstraint]; + + NSLayoutConstraint *rightConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeRight multiplier:1.0 constant:0]; + [myView addConstraint:rightConstraint]; + + + + NSLayoutConstraint *topConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeTop multiplier:1.0 constant:9]; + [myView addConstraint:topConstraint]; + + NSLayoutConstraint *bottomConstraint = [NSLayoutConstraint constraintWithItem:myLabel attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:myView attribute:NSLayoutAttributeBottom multiplier:1.0 constant:-10]; + [myView addConstraint:bottomConstraint]; + + for (UIView *view in pickerView.subviews) { + if (view.frame.size.height<1) { + view.backgroundColor = [UIColor clearColor]; + } + } + + return myView; +} + +- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{ + // UIView *firstView = [pickerView viewForRow:0 forComponent:component]; + // UIView *v = [pickerView viewForRow:row forComponent:component]; + // v.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1.0]; + // + // UIView *v2 = [pickerView viewForRow:row + 1 forComponent:component]; + // v2.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1.0]; + // + // UIView *v0 = [pickerView viewForRow:row-1 forComponent:component]; + // v0.backgroundColor = [UIColor colorWithRed:101/255.0 green:178/255.0 blue:255/255.0 alpha:1.0]; + +// self.didSeclecter = row; + + if (_isCollege == YES){ + self.rowForCollege = row; + } + else { + self.rowForSubject = row; + } + [self.pickerView reloadAllComponents]; } - (void)didReceiveMemoryWarning { @@ -24,14 +573,15 @@ - (void)didReceiveMemoryWarning { // Dispose of any resources that can be recreated. } -/* -#pragma mark - Navigation -// In a storyboard-based application, you will often want to do a little preparation before navigation -- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { - // Get the new view controller using [segue destinationViewController]. - // Pass the selected object to the new view controller. -} -*/ +/* + #pragma mark - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { + // Get the new view controller using [segue destinationViewController]. + // Pass the selected object to the new view controller. + } + */ @end diff --git a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/StatisticsTable.m b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/StatisticsTable.m index d79ff4b..664fe2e 100644 --- a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/StatisticsTable.m +++ b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/CQUPTData/StatisticsTable.m @@ -51,7 +51,7 @@ - (instancetype)initWithFrame:(CGRect)frame With:(NSArray *) color{ } - (void)drawLinesWithDetail:(NSArray*) context With:(NSArray *) color { for (int i = 0; i < context.count; i ++) { - [self removeFromSuperview]; +// [self removeFromSuperview]; UIBezierPath *path = [UIBezierPath bezierPathWithArcCenter:CGPointMake(self.frame.size.width/2, self.frame.size.width/2) radius:self.frame.size.width/2 - (_lineWidth+_blankWidth) * (i+1) startAngle:-M_PI/2 endAngle:M_PI * 2 * [context[i][@"score"] floatValue] - M_PI/2 clockwise:YES]; CAShapeLayer *sideshape = [CAShapeLayer layer]; CAShapeLayer *shape = [CAShapeLayer layer]; diff --git a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/MaleToFemaleRatioViewController.m b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/MaleToFemaleRatioViewController.m index d642d41..84bf449 100644 --- a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/MaleToFemaleRatioViewController.m +++ b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/MaleToFemaleRatioViewController.m @@ -6,17 +6,26 @@ // Copyright © 2017年 topkid. All rights reserved. // +#import "OriginalCY.h" +#import "StatisticsTable.h" #import #import "MaleToFemaleRatioViewController.h" +#define KHEIGHT [UIScreen mainScreen].bounds.size.height +#define KWIDTH [UIScreen mainScreen].bounds.size.width + @interface MaleToFemaleRatioViewController () -@property NSMutableArray *array; + @property (strong, nonatomic) UIPickerView *pickerView; @property (strong, nonatomic) UIButton *collegeBtn; @property (strong, nonatomic) UIToolbar *toolBar; @property (strong, nonatomic) UIView *backgroundGrayView;//遮盖来显示灰色的view @property (strong, nonatomic) UIView *rootView;//放置toolBar和pickerView的view @property (strong, nonatomic) UIView *blueView;//pickerView每一个cell的背景色view +@property (strong, nonatomic) NSArray *collegeArray;//学院数组 +@property (strong, nonatomic) NSArray *maleRatioArray; + +@property (strong, nonatomic) StatisticsTable *circle;//动画view @property NSInteger didSeclecter; @end @@ -25,14 +34,60 @@ @implementation MaleToFemaleRatioViewController - (void)viewDidLoad { [super viewDidLoad]; - UIView *animateView = [[UIView alloc] initWithFrame:CGRectMake(50, 200, 194, 168)]; - animateView.backgroundColor = [UIColor orangeColor]; - [self.view addSubview:animateView]; + self.collegeArray = @[@"通信与信息工程学院", @"光电工程学院", @"经济管理学院", @"计算机科学与技术学院", @"外国语学院", @"生物信息学院", @"网络空间安全与信息法学院", @"自动化学院", @"先进制造工程学院", @"体育学院", @"理学院", @"传媒艺术学院", @"软件工程学院", @"国际半导体学院", @"国际学院", @"全校"]; + self.maleRatioArray = @[@"0.70170895908856", @"0.75974025974026", @"0.47773032336791", @"0.78189994378865", @"0.19402985074627", @"0.58082706766917", @"0.31578947368421", @"0.81203473945409", @"0.91925465838509", @"0.79888268156425", @"0.70185185185185", @"0.29898648648649", @"0.84781188765513", @"0.83630470016207", @"0.75757575757576", @"0.66471399035148"]; + [self layoutAnimateView]; [self layoutPickerView]; [self layoutCollegeButton]; } +- (void)layoutAnimateView { + NSArray *buleColor = @[COLOR_BULE1, COLOR_BULE2, COLOR_BULE3,COLOR_BULE4]; +// NSArray *greenColor = @[COLOR_GREEN1, COLOR_GREEN2, COLOR_GREEN3,COLOR_GREEN4]; +// NSArray *yellowColor = @[COLOR_YELLOW1, COLOR_YELLOW2, COLOR_YELLOW3,COLOR_YELLOW4]; + NSArray *pinkColor = @[COLOR_PINK1, COLOR_PINK2, COLOR_PINK3,COLOR_PINK4]; + NSArray *color = @[buleColor, pinkColor]; + //距离左右各90,上下平分 + double width = KWIDTH - 180; + double height = width; + StatisticsTable *circle = [[StatisticsTable alloc ]initWithFrame:CGRectMake((KWIDTH - width) / 2.0, (KHEIGHT - 44 - 20 - 47 - height) / 2.0 - 25, width, height) With:color]; + self.circle = circle; + self.circle.backgroundColor = [UIColor whiteColor]; + + [self.view addSubview:self.circle]; +} + + +- (void)addAnimateWithMale:(double)male Female:(double)female { + NSArray *buleColor = @[COLOR_BULE1, COLOR_BULE2, COLOR_BULE3,COLOR_BULE4]; +// NSArray *greenColor = @[COLOR_GREEN1, COLOR_GREEN2, COLOR_GREEN3,COLOR_GREEN4]; +// NSArray *yellowColor = @[COLOR_YELLOW1, COLOR_YELLOW2, COLOR_YELLOW3,COLOR_YELLOW4]; + NSArray *pinkColor = @[COLOR_PINK1, COLOR_PINK2, COLOR_PINK3,COLOR_PINK4]; + NSArray *color = @[buleColor, pinkColor]; + + NSNumber *num1 = [NSNumber numberWithDouble:male]; + NSNumber *num2 = [NSNumber numberWithDouble:female]; + NSDictionary *class1 = @{@"name":@"男", @"score": num1}; + NSDictionary *class2 = @{@"name":@"女", @"score": num2}; + NSArray *detail = @[class1, class2]; + +//距离左右各90,上下平分 + double width = KWIDTH - 180; + double height = width; + StatisticsTable *circle = [[StatisticsTable alloc ]initWithFrame:CGRectMake((KWIDTH - width) / 2.0, (KHEIGHT - 44 - 20 - 47 - height) / 2.0 - 25, width, height) With:color]; + self.circle = circle; + + [self.circle drawLinesWithDetail:detail With:color]; + self.circle.backgroundColor = [UIColor whiteColor]; + + + [self.view addSubview:self.circle]; + +//让选择器在最上面 + [self.view bringSubviewToFront:self.rootView]; +} + - (void)layoutCollegeButton { UIButton *btn = [[UIButton alloc] init]; @@ -86,10 +141,15 @@ - (void)layoutCollegeButton { - (void)tapCollegeBtn { + if (!self.rootView) { + [self layoutPickerView]; + } + self.rootView.alpha = 1; + self.rootView.backgroundColor = [UIColor whiteColor]; + //获取window UIWindow *window = [UIApplication sharedApplication].keyWindow; - self.backgroundGrayView= [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; - self.backgroundGrayView.backgroundColor = [UIColor brownColor]; + self.backgroundGrayView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; //创建遮盖view self.backgroundGrayView = [[UIView alloc] init]; @@ -97,7 +157,7 @@ - (void)tapCollegeBtn { self.backgroundGrayView.translatesAutoresizingMaskIntoConstraints = NO; self.backgroundGrayView.backgroundColor = [UIColor colorWithRed:153/255.0 green:153/255.0 blue:153/255.0 alpha:0.7]; - NSLayoutConstraint *height = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.height - self.rootView.bounds.size.height]; + NSLayoutConstraint *height = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.height - self.rootView.bounds.size.height - 20]; [self.backgroundGrayView addConstraint:height]; NSLayoutConstraint *width = [NSLayoutConstraint constraintWithItem:self.backgroundGrayView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:[UIScreen mainScreen].bounds.size.width]; @@ -127,6 +187,7 @@ - (void)tapToBackAction { self.pickerView.hidden = YES; self.toolBar.hidden = YES; self.blueView.hidden = YES; + self.rootView.alpha = 0; } [self.backgroundGrayView removeFromSuperview]; @@ -140,11 +201,16 @@ - (void)tapPickerBtn { self.pickerView.hidden = YES; self.toolBar.hidden = YES; self.blueView.hidden = YES; + self.rootView.alpha = 0; } + [self.circle removeFromSuperview]; + + + [self.backgroundGrayView removeFromSuperview]; - NSInteger i = [self.pickerView selectedRowInComponent:0]; + NSInteger row = [self.pickerView selectedRowInComponent:0]; #pragma mark - 网络请求 //网络请求 @@ -159,10 +225,19 @@ - (void)tapPickerBtn { // manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"text/html",@"text/plain", nil]; // [manager POST:url parameters:parameters success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseobject) { // NSDictionary *dic = responseobject; -// NSLog(@"%@", dic); +//// NSLog(@"%@", dic); +// //male +// double male = [dic[@"Data"][row][@"MenRatio"] doubleValue]; +// //female +// double female = [dic[@"Data"][row][@"WomenRatio"] doubleValue]; +// [self addAnimateWithMale:male Female:female]; // }failure:^(NSURLSessionDataTask * _Nonnull task, NSError * _Nonnull error) { // NSLog(@"请求失败,error:%@", error); // }]; + + double male = [self.maleRatioArray[row] doubleValue]; + double female = 1 - male; + [self addAnimateWithMale:male Female:female]; } @@ -171,6 +246,7 @@ - (void)layoutPickerView { #pragma mark - rootView // pickerView和toolBar放在这一个view上 UIView *rootView = [[UIView alloc] init]; + rootView.translatesAutoresizingMaskIntoConstraints = NO; [self.view addSubview:rootView]; self.rootView = rootView; @@ -290,7 +366,7 @@ -(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView //指定每个表盘上有几行数据 -(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component { - return 8; + return self.collegeArray.count; } - (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component { @@ -318,7 +394,7 @@ - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forC myView.backgroundColor= [UIColor clearColor]; UILabel *myLabel = [[UILabel alloc] init]; - myLabel.text = @"hahahahahahah"; + myLabel.text = self.collegeArray[row]; myLabel.translatesAutoresizingMaskIntoConstraints = NO; myLabel.textAlignment = NSTextAlignmentCenter; myLabel.font = [UIFont systemFontOfSize:14]; diff --git a/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/0.png b/MoblieCQUPT_iOS/Finder/shake/FreshMan_2017/StuStrategyDetailVC/0.png new file mode 100755 index 0000000000000000000000000000000000000000..a08863f6aa7c67c7ea7f647fa860984f3f657698 GIT binary patch literal 195920 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%0AmvZE)g#~+?sq|fwExJP@~5Gs}Op%a-p#yk5N0> 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

%3DA$bFRjm%t%!-1hau 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