2017-09-14 2 views
0

많은 것들을 시도했지만 UITabBarItem의 레이블을 lineNumber customised.0 (두 줄에 제목을 넣고 싶습니다.) 레이블을 넣는 방법을 찾는 것은 불가능합니다.UITabBarItem의 여러 줄 레이블

할 방법이 있습니까?

+1

이 약 1 탐색 모음의 제목이 아닌 탭 표시 줄 항목의 제목입니다. – the4kman

+0

당신은 UITabBarItem에서 레이블을 원한다는 것을 의미합니다. 또한 터치 이벤트 (추측)를 원하십니까? 그럼 당신은 directlly 여러 줄 UIButton을 사용할 수 있습니다. –

+0

"제목 레이블"이 노출되지 않습니다 ... 사용자 지정 탭 막대를 사용해야합니다. – DonMag

답변

2

이제 두 개의 하위 뷰가 있습니다. 0은 imageView이고 1은 레이블입니다. 이제 이미지 뷰의 높이를 조금 더 작게하여 레이블의 높이를 조금 크게하여 여러 줄을 만들 수 있습니다. 코드의 proprty ofnumberofline을 0으로 설정하십시오.

 let viewTabBar = tabBarItem.value(forKey: "view") as? UIView 
    let imageView = viewTabBar?.subviews[0] as? UIImageView 
    let label = viewTabBar?.subviews[1] as? UILabel 

이제이 라벨을 사용하십시오.

+1

당신은 그 메달을 받아야합니다;) 나는 당신의 대답이 많은 사람들을 도울 것이라고 확신합니다! –

+0

안녕하세요, 감사합니다. ..... 그런 질문에 대답하는 것이 좋은 것 같아요. – Arnav

+1

이미지가 없다면, UILabel의 인덱스는 0이 될 것입니다. – eXhausted

0

UIBarButtonItemUINavigationItem과 같은 속성이 titleView이 아니기 때문에 이것을 수행 할 수 없습니다!

제목 및 탭 이미지로 문자열 만 설정할 수 있습니다! 그게 다야!

tabbaritem의 제목보기로 레이블을 설정할 수있는 옵션이 있다면 numberofline 0으로 레이블을 가져올 수 있지만 여기서 문자열 만 설정할 수 있습니다!

1

더 안정적인 솔루션 : chirag90 @

guard let view = tabBarItem?.value(forKey: "view") as? UIView, 
     let label = (view.subviews.flatMap{ $0 as? UILabel }).first, 
     let imageView = (view.subviews.flatMap{ $0 as? UIImageView }).first else { return }