728x90
tmp_text나 text ui 등을 수정했을 때, 자기 자신의 component 이외에 상위 부모 component에 추가한 contentsizefitter에 의해서 transform size가 새로고침이 되지 않는 현상이 있습니다.
다른 블러거 분들이나 forum에서는 이를 contentsizefitter 버그가 아닌가로 보고 있는 듯 하고, contentsizefitter를 refresh 해주면 현상이 해결되는 것을 확인했습니다.
저의 경우는 상위 부모 2계층에 contentsizefitter가 자식까지 총 3개가 연이어 들어간 구조였기에 다음과 같은 코드를 적용했습니다.
- 구조
부모1-component에 contentsizefitter add
ㄴ부모2-component에 contentsizefitter add
ㄴ자식-component에 contentsizefitter add
//contentsizefitter가 포함된 복수의 부모 개체 가져오기
var parents = transform.GetComponentsInParent<ContentSizeFitter>();
//가져온 복수의 부모 개체 contentsizefitter 새로고침
foreach (var parent in parents)
LayoutRebuilder.ForceRebuildLayoutImmediate((RectTransform)parent.transform);
728x90
반응형
'Unity3D > Unity & C#' 카테고리의 다른 글
Unity & C# ~ InputField가 선택 되었을 때, 커서 위치 (0) | 2022.11.17 |
---|---|
Unity & C# ~ Tab 키를 눌러서 입력 필드 위치 변경 (public list 활용) (0) | 2022.11.17 |
Unity & C# ~ 문자열에서 여러 요소 바꾸기 (0) | 2022.10.24 |
Unity & C# ~ 문자열에서 단어 검색 방법 (0) | 2022.10.24 |
Unity & C# ~ 두 오브젝트의 색상과 이미지가 중복되지 않는 랜덤 출력 (0) | 2022.10.07 |