2017-04-03 15 views
0

Swift의 최신 버전으로 방금 업데이트되었으며 중단 점 오류와 관련된 문제가 발생합니다. 콘솔에 오류가 없습니다. 최신 Swift 버전 문제로 업데이트

backgroundsetting.innerColor = UIColor.rgb(fromHex: 0xB0E7D7) 

backgroundsetting.outterColor = UIColor.rgb(fromHex: 0x005E7D) 

backgroundsetting.frame = (frame: CGRect(x: self.view.frame.size.width * 0, y: self.view.frame.size.height * 0, width:self.view.frame.size.width, height: self.view.frame.size.height)) 
self.view.addSubview(backgroundsetting) 

는 다음 업데이트 후에는 backgroundsetting.frame as! CGRect를 설정 나를 원하고 내가 응용 프로그램의 일부를 열 때 앱을 충돌합니다. 이것은 왜 발생 하는가?

backgroundsetting.innerColor = UIColor.rgb(fromHex: 0xB0E7D7) 

backgroundsetting.outterColor = UIColor.rgb(fromHex: 0x005E7D) 

backgroundsetting.frame = (frame: CGRect(x: self.view.frame.size.width * 0, y: self.view.frame.size.height * 0, width:self.view.frame.size.width, height: self.view.frame.size.height)) as! CGRect 
self.view.addSubview(backgroundsetting) 

답변

0

backgroundsetting.frame 속성은 CGRect의 유형 왜 이런 CGRect을 생성하지입니다 : 여기에 후 코드는

backgroundsetting.frame = CGRect(x: self.view.frame.size.width * 0, y: self.view.frame.size.height * 0, width:self.view.frame.size.width, height: self.view.frame.size.height) 
+0

고맙습니다. –

+1

천재 아무거나 0은 제로입니다. 왜'backgroundsetting.frame = view.frame'이 아닌가? –

+1

물론 0과 같습니다. 그것은 실패 안전합니다; 애플이 출시하는 미래의 장치가 다른 경우에는 –

0

당신이보기에 대한 제약 조건을 사용하여 다음 높이를 사용하는 경우 : self.view.frame.size.height 및 width : self.view.frame.size.width로 설정하면 iPhone 화면과 비교하여 적절한 높이 및 너비가 표시되지 않습니다.

UIScreen 크기 즉 UIScreen.main.bounds.height 및 UIScreen.main.bounds.width를 사용하면 iPhone의 너비와 높이가 항상 원래대로 표시됩니다.

backgroundsetting.frame = CGRect(x: self.view.frame.size.width * 0, y: self.view.frame.size.height * 0, width:UIScreen.main.bounds.width, height: UIScreen.main.bounds.height) as! CGRect 
    self.view.addSubview(backgroundsetting)