티스토리 뷰
안녕하세요!
이 바로 전글에서
iOS ) 텍스트뷰 테두리 둥글게/버튼 둥글게
myTextView.clipsToBounds = true
위 코드를 보셨을 거에요.
그리고
Button.layer.masksToBounds = false
뭐 이런코드도 보셨을 겁니다.
근데 이걸 안해도 아무 문제없어요. 지금 상태에서는요.
위 코드를 안적어도 텍스트뷰는 둥글게 되고 버튼도 잘 됩니다.
근데!!!왜 다들
여기도
여기도
여기도...
도대체
masksToBounds가 뭐고 clipsToBounds가 뭘까요?
먼저 결론만 말씀드리면 이 두개의 프로퍼티는 기능이 똑같다고 볼 수 있습니다.
아니 이게 무슨기능인데요??
라고 물어보시면 예제를 통해 보여드릴게요. 한번에 아실 수 있을 겁니다.
자 바로 이전 글에 썼었던
텍스트뷰를 재활용해보겠습니다.
ㅎㅎ
왼쪽은 cornerRadius를 70, 오른쪽은 120을 준 상황입니다.
이거 저번시간에 했는데 왜 또 보여주냐구요?
저기 텍스트뷰 안에 있는 글 보이시나요?
원래 이렇게 안녕하세요:)라는 글이 있었답니다..하지만 테두리를 둥글게 둥글게 만들다보니
저 글씨가 안보이게 된거죠....!
자 지금은 저게 보여도 안보여도 상관없지만
때에 따라서는, 아니면 텍스트뷰가 아니라 버튼, 라벨이었다면,
프로그래머가 그 안에 적은 텍스트가 짤리면 안되는 일이 생길 수 있겠죠?
그럴때!!!!!!!!!!!
바로 오늘의 주제인
⭐️ masksToBounds 또는 clipsToBounds을 사용하는 것입니다. ⭐️
자, 먼저 두개는 똑같은 기능을 한다고 그랬죠?
하지만 불러오는 곳이 다릅니다.
myTextView.layer.masksToBounds
myTextView.clipsToBounds
masksToBounds는 layer의 프로퍼티고 clipsToBounds는 그냥 텍스트뷰의 프로퍼티죠?
(이때, 텍스트뷰 뿐만이 아니라 버튼, 라벨에서도 불러올 수 있는 프로퍼티입니다.)
먼저 masksToBounds는
bool변수 입니다.
true와 false일때, 어떻게 다를까요?
masksToBounds를 true로 주게되면, 위의 안녕하세요:)가 짤린것 처럼
텍스트뷰 테두리가 기준이됩니다.
텍스트뷰라는 큰 뷰가있고 그 안에 안녕하세요:)라는 내용이 있는 것이죠?
이 큰 뷰를 기준으로 바깥에 있는 것은 짤리게 됩니다.
만약 false를 주면 어떻게 될까요?
네 맞습니다. 짤리지않고, 내용(안녕하세요:)이 다 보이게 된답니다.
그리고 다음 clipsToBounds.
clipsToBounds역시 bool변수네요.
그리고 친절하게 주석으로 설명까지 되어있네요!!
해석을 해보면,
"true일때 내용들과 서브뷰들은 뷰의 테두리를 기준으로 잘리게 됩니다.
기본값은 false입니다. "
역시 masksToBounds와 같이 false를 주면 짤리지 않게 되는 것 같네요.
두개는 기능이 똑같다고 했으니 하나씩 해보고 진짜 똑같은지 한번 보죠.
viewDidLoad()에
myTextView.layer.masksToBounds = false
위 코드를 넣어주세요.
그러고 실행시켜주면..!!
짠!!! 안녕하세요:)가 살아났어요!!
그리고 위 코드를 주석처리하고 이번엔
myTextView.clipsToBounds = false
를 해봅시다.
그리고 실행시키면!!
역시나 이렇게 된답니다 ㅎㅎㅎ
이 두개의 차이점이 뭔지 궁금해서 한참을 찾아봤네요ㅎㅎ..
도움이 되었으면 좋겠어요 🙏
'iOS' 카테고리의 다른 글
iOS ) View Controller의 생명주기(Life-Cycle) (15) | 2017.03.13 |
---|---|
iOS10 ) TTS(Text-To-Speech) 구현 (2) | 2017.03.10 |
iOS ) 텍스트뷰 테두리 둥글게/버튼 둥글게 (3) | 2017.03.02 |
iOS ) NavigationController BackButton 색상, 텍스트 바꾸기 (4) | 2017.02.20 |
MAC Xcode xcassets 크기? (1x, 2x, 3x) (11) | 2017.02.18 |
- 회고
- swift delegate
- fastlane
- 제이슨 파싱
- WidgetKit
- ios 13
- np-complete
- FLUTTER
- Swift
- WKWebView
- IOS
- 스위프트
- Xcode
- 스위프트 문법
- swift3
- Combine
- iOS delegate
- swift array
- swift sort
- UIBezierPath
- 피아노
- SwiftUI
- Git
- github
- Accessibility
- np-hard
- actor
- WWDC
- swift tutorial
- swift 공부
- Total
- Today
- Yesterday