UITableViewCell에 컬러 원 그리기

야옹 meowmeow

왼쪽에 컬러 원이있는 UITableViewCell을 생성하려고합니다. 내 계획은 UIButton을 사용하고 레이어의 모서리 반경을 조작하는 것입니다. 그러나 컬러 버튼은 나타나지 않습니다.

내 xib :

여기에 이미지 설명 입력

내 ColorHolder UIButton에 대한 IBOutlet과 해당 색상에 대한 변수가 있습니다.

class ColoredCircleCell: UITableViewCell {

    @IBOutlet weak var colorHolder: UIButton!
    @IBOutlet weak var infoRow1: UILabel!
    @IBOutlet weak var infoRow2: UILabel!

    var circleColor: CGColor = UIColor.clear.cgColor 

    override func awakeFromNib() {
        super.awakeFromNib()

        colorHolder.layer.cornerRadius = colorHolder.bounds.size.height / 2
        colorHolder.layer.backgroundColor = circleColor
        colorHolder.clipsToBounds = true
}

내 cellForRowAt indexPath에서 :

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "CircleCell", for: indexPath) as! ColoredCircleCell

        print(cell.colorHolder.bounds.size.height)

        cell.colorHolder.layer.cornerRadius = cell.colorHolder.bounds.size.height / 2
        cell.colorHolder.layer.backgroundColor = UIColor.red.cgColor

        cell.infoRow1.text = "H1"

        return cell
    }

콘솔은 셀의 크기가 1000이라고 알려줍니다. 행 높이와 관련하여 여전히 크기가 조정되지 않은 것 같습니다.

편집 : 나는 문제를 cell.colorHolder.layer.cornerRadius = cell.colorHolder.bounds.size.height / 2. 의 값 cell.colorHolder.bounds.size.height은 항상 1000입니다. 화면에 렌더링 된 후 올바른 값을 어떻게 추출합니까?

출력 :

여기에 이미지 설명 입력

내 UITableViewCell에 대한 구성 가능한 원을 어떻게 추가합니까?

야옹 meowmeow

완성을 위해 여기에 답변을 게시하십시오. self.layoutIfNeeded(경계에 액세스하기 전에) 를 추가해야했습니다 . 게시물 은 나를 도왔습니다.

override func awakeFromNib() {
        super.awakeFromNib()

        self.layoutIfNeeded()   

        colorHolder.layer.cornerRadius = colorHolder.bounds.size.height / 2
        colorHolder.layer.backgroundColor = circleColor
        colorHolder.clipsToBounds = true
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

MATLAB에서 컬러 맵 그리기

분류에서Dev

CGAL에서 컬러 메쉬 그리기

분류에서Dev

여러 원 그리기 Android

분류에서Dev

여러 원 그리기

분류에서Dev

자바에서 여러 타원 그리기

분류에서Dev

R에서 원 그리기

분류에서Dev

R에 반원 그리기

분류에서Dev

원에 점 그리기

분류에서Dev

JFrame에 원 그리기

분류에서Dev

iOS 스프라이트 키트에서 부드러운 원 그리기

분류에서Dev

CSS에서 반원형 그리기

분류에서Dev

Flutter에서 원 메뉴 그리기

분류에서Dev

R에서 일련의 원 그리기

분류에서Dev

Tableau에서 원형 차트 그리기

분류에서Dev

Winform 외부에 원 그리기

분류에서Dev

R에서 원의 호 그리기

분류에서Dev

제출 버튼에 원 그리기

분류에서Dev

Matlab에 회전 된 타원 그리기

분류에서Dev

Matlab에 회전 된 타원 그리기

분류에서Dev

Java-JButton 및 JTextArea에 원 그리기

분류에서Dev

원 아래에 텍스트 그리기

분류에서Dev

원 아래에 텍스트 그리기

분류에서Dev

로컬 sysroot 및 원격 gdbserver에서 GDB로드 라이브러리를 사용하는 방법

분류에서Dev

원격 이벤트 관리자에 로컬 이벤트 핸들러를 추가 할 수 있습니까?

분류에서Dev

로컬 Dask 스케줄러가 원격 리소스의 작업자에 연결하지 못함

분류에서Dev

앵귤러 머티리얼 테이블에서 화면 크기를 줄일 때 동일한 컬럼 크기를 지원하는 방법

분류에서Dev

파이썬 거북이 원 안에 임의의 원 그리기

분류에서Dev

d3js를 사용하여 브러시 확대 / 축소에서 원래 그래프로 되돌리기

분류에서Dev

로컬 태그를 원격으로 미러링하는 방법