起初我点击服务来获取数据。获取数据后,我设置了swipeMenuView(这是swipeAction b / w VC的第3方库),第一次,它可以正常工作,但是当我再次从dropDown选择Year之后,我点击了服务以获取新数据并重新加载swipeMenuView。控制台中的屏幕上没有任何内容重新加载。我正在获取此[未知进程名称] CGAffineTransformInvert:奇异矩阵错误我在Internet和stackoverflow中对其进行了搜索,但没有得到正确的答案。因此,任何人都可以使我摆脱这个问题。请参考下面的代码,让我知道出了什么问题。预先感谢。
网络通话以获取数据
func getData(finYearID : Int = 3)
{
guard Reachability.isConnectedToNetwork() else {DispatchQueue.main.async {self.showAlert(message: NoInternet)};return}
DispatchQueue.main.async {
self.showLoading(text: loading)
}
DispatchQueue.global(qos: .userInteractive).async {
OfficerNetworkCalls.shared.getFinancialYears()
{[weak self](financialYears) in
self?.finYears = financialYears.finYears
//update ui for financial Year Button
OfficerNetworkCalls.shared.getDistrictWiseData(finYearID: String(finYearID))
{[weak self] (districtData) in
self?.AllDistrictVC.districtData = districtData
//update ui for districts in dashboard
OfficerNetworkCalls.shared.getAgeWiseChartData(finYearID: String(finYearID))
{[weak self](ageWiseData) in
self?.AllGenderVC.ageData = ageWiseData
//update ui for ageWiseChart in dashboard
OfficerNetworkCalls.shared.getGenderWiseChartData(finYearID: String(finYearID))
{[weak self](genderchartData) in
//update ui for gender chart in dashboard
self?.AllGenderVC.genderData = genderchartData
OfficerNetworkCalls.shared.getBloodGroupWiseChartData(finYearID: String(finYearID))
{[weak self](bloodGroupData) in
//update ui for blood Group data in dashboard
self?.AllBloodGroupVC.bloodGroupData = bloodGroupData
OfficerNetworkCalls.shared.getGovtPvtWiseChartData(finYearID: String(finYearID))
{[weak self](gvtpvtdata) in
//update ui for govtPvt chart in dashboard
DispatchQueue.main.async {
self?.AllGovtPvtVC.govtPvtData = gvtpvtdata
//self?.removeChildVCs()
if self?.isSwipeAdded == true
{
self?.swipemenuView.reloadData()
}
else{
self?.swipeMenuSetup()
}
self?.hideLoading()
}
}//End of gvtPvtSerivce Call
}//End of bloodGroupDataService Call
}//End of GenderWiseSerice Call
}//End of AgeWiseSerice Call
}//End of DistrictWiseSerice Call
}//End of FinancialYearSerice Call
}//End of Background thread black
}
我打多个服务是否正确?
选择按钮操作
@IBAction func selectYearButtonAction(_ sender: UIButton) {
print("select button action")
let dropdown = DropDown()//DropDown is 3rd party library for dropdown action
dropdown.dataSource = finYears.map{$0.finYear}
dropdown.anchorView = sender
dropdown.show()
dropdown.selectionAction = {[unowned self](index : Int , item : String) in
sender.setTitle(item, for: .normal)
print(self.finYears[index])
//hitting service to get newData based on finYear
self.getData(finYearID: self.finYears[index].finYearID)
dropdown.hide()
}
}
SwipeMenuSetup方法
func swipeMenuSetup()
{
isSwipeAdded = true
swipemenuView.delegate = self
swipemenuView.dataSource = self
options.tabView.style = .segmented
options.tabView.margin = 0.0
options.tabView.additionView.underline.height = 2.0
options.tabView.additionView.backgroundColor = UIColor(named: ThemeConstant.bgColor.getTheme())!
options.tabView.backgroundColor = UIColor.white
options.tabView.itemView.textColor = UIColor.darkGray
options.tabView.itemView.selectedTextColor = UIColor.black
options.tabView.itemView.font = UIFont.systemFont(ofSize: CGFloat(12.0))
options.tabView.height = 40
options.tabView.isSafeAreaEnabled = false
swipemenuView.reloadData(options: options)
}
最后我找到了问题。问题出在Charts(图表的第三方库)上,我正在使用图表来显示数据。当我们收到空数据数组时,出现此错误,但我不知道为什么收到此错误