2016-10-17 4 views
0

셀 중간에 이미지보기를 배치하는 데 약간의 문제가 있습니다. 선택적 AccessoryView 또는 소품 (화면 중앙에 있어야하지만 AccessoryView 나 액세서리를 겹치지한다) UIImageView에 정렬 한 채로 라벨 : ImageView 중앙에서 TableViewCell 내부로

제가 함께있는 tableView 셀있다.

문제는 내가 모든 이미지이 원하는 것을 (화면의 중앙에있을 것입니다) 있는 UIImageView를 왼쪽 정렬하는 레이블입니다 :

나는 다음 헤더 셀을 가로로 정렬 (머리글 포함)하지만 AccessoryView/Accessory는 계산을 중단합니다. 이미지보기는 ScaleAspectFit입니다. 현재 너비는 contentView의 전체 너비로 설정했습니다.

누구나 대략 어떻게 알 수 있습니까? 사람들이 AccessoryView 또는 액세서리가없는 셀에 빈보기를 넣으라고 말하는 것을 읽었지 만 헤더와 관련하여 도움이되지 않습니까? 다른 사람들은 하드 코딩 된 값을 가지고 있습니까?

많은 감사

+0

당신이하려는 일에 대해 좀 더 명확히 할 수 있습니까? 가능한 경우 스크린 샷을 첨부하십시오. 맞습니까? 헤더 및 일반 셀을 포함하여 모든 imageView를 정렬하려고하지만 액세서리 뷰 뒤에 이미지가 나타나지 않게하려면? – Rikh

+0

그래, 미안하지만 기본적으로 모든 이미지를 헤더 셀을 포함한 직선으로 나타나게하고 싶다. AccessoryView 또는 액세서리를 중첩하지 않습니다. – Robert

+0

간단히 모든 imageView를 수퍼 뷰에 정렬하고 왼쪽에있는 레이블에 값과 같거나 클 수있는 선행을 추가하고 imageView의 너비를 설정할 수 있습니다. 물론 필요에 따라 수직 구속 조건을 추가해야합니다. 편집 : 액세서리보기가 일반적으로 나타나는 위치보다 큰 꼬리말을 추가해야합니다. – Rikh

답변

0

변경 이미지 뷰 프레임 X 원점 휴대 레이아웃 파단 후. 이것을 셀 정의에 추가하십시오.

override func layoutSubviews() { 
    let screenWidth = UIScreen.main.bounds.width 
    let imageViewWidth = self.imageView?.frame.width 
    let imageViewOriginX = (screenWidth - imageViewWidth!)/2 
    self.customImageView.frame.origin.x = imageViewOriginX 
}