홈>
우리는 다이나믹 UILabel 글꼴 (한 줄)을 만드는 방법을 알고 있습니다-
lbl.adjustsFontSizeToFitWidth = true
lbl.numberOfLines = 1
lbl.minimumScaleFactor = 0.1
lbl.baselineAdjustment = UIBaselineAdjustment.AlignCenters
lbl.textAlignment = NSTextAlignment.Center
문제는 주어진 각 문자열에 대해 다른 결과를 제공한다는 것입니다. 예를 들어 문자열
"Hello"
가있는 경우
그리고
"Hello World"
계산 된 글꼴 크기가 다릅니다. 모든 문자열에 대해 단일 크기의 동적 글꼴을 만들어야합니다.
내 프로젝트의 예 :
카메라 효과가 내장 된 iPhone 6의 예 (모든 UILabels 글꼴 크기가 일치하는 것을 볼 수 있음) :
내가 생각한 바는 무엇입니까?
기본적으로 나는 내가 가진 가장 큰 문자열이 무엇인지 안다. 그래서 나는 주어진CGSIze에서가장 큰 문자열에 대한글꼴 크기를 어떻게 계산하는지 (효과적인 방법으로) 생각하고있었습니다. 따라서 항상 경계에 머무 릅니다.모든 제안이 있으십니까?
-
답변 # 1
관련 자료
- ios - Tableview 셀 내부에 동적 collectionView 생성
- python - 단일 모델에서 아키텍처를 공유하지만 Keras의 단일 모델에서 다른 가중치 집합을 학습하는 재사용 가능한 블록을 어떻게 생성합니까?
- mysql - 동적 PHP 콘텐츠를 만드는 방법은 무엇입니까?
- python - 열별 조건을 기반으로 단일 DataFrame에서 여러 DataFrame 생성
- http - REST API로 Firebase 동적 링크를 만드는 방법
- javascript - js 내부에서 동적 선택 생성
- plotly - r 및 shiny를 사용하여 서브 플롯에 대한 단일 y 축 레이블을 만드는 방법은 무엇입니까?
- Python의 함수에 전달 된 동적 텍스트 매개 변수를 사용하여 데이터 프레임을 만드는 방법
- c# - 동적 데이터가 연결 문자열을 결정할 때 DbContext를 작성하는 좋은 패턴은 무엇입니까
- javascript - 반응에서 formik을 사용하여 동적 드롭 다운을 만드는 방법은 무엇입니까?
- android - 기기를 기반으로 사용자를 iTunes 또는 gplay로 보내는 모바일 앱에 대한 단일 HTML 링크를 작성 (방법) 할 수 있습니까?
- 파이썬 모듈을 단일 호출 가능 함수로 만드는 방법은 무엇입니까?
- c# - Neo4j Cypher Client에서 동적 객체 생성
- ios - 동적 레이블 수로 사용자 정의 UITableViewCell을 작성하는 방법
- Angular에서 단일 서비스 인스턴스 생성
- ios - UILabel 텍스트에서 CGPathRef를 만드는 방법은 무엇입니까?
- c# - 동적 메소드의 약한 델리게이트 생성 (ref object, object [] arr)
- javascript - 객체에서 배열을 반복 한 후 키에 대한 단일 행으로 배열 만들기
- python - 클래스에 할당 할 동적 개체 이름을 만드는 방법은 무엇입니까?/Tkinter가 다른 개체 이름으로 여러 창을 만드는 방법
- javascript - js를 사용하여 동적 요소 카운터를 만들 수 없습니다
관련 질문
- string - Swift에서 시스템 입력을 쉽게 읽을 수있는 방법
- ios - TextField 내부의 텍스트 끝에서만 편집 가능
- ios - Swift 5에서 문자열이 알파벳 문자로 시작하는지 확인하는 방법은 무엇입니까?
- ios - swift - 문자열을 문자열의 단어 및 범위 목록으로 변환
- objective c - MacOS 동적 포트 포워딩 (ssh -D)
- objective c - 배열 오류를 전달하는 Obj-C Swift에서 'MyVC *'유형의 개체에서 'myArray'속성을 찾을 수 없습니다
- ios - ObjC 앱 빌드는 ObjC 정적 라이브러리 내에서 신속한 함수 호출에 대한 빌드 오류를 가져옵니다
- ios - swift 파일이 포함 된 Objective-C 정적 라이브러리 가져 오기로 인한 Objective-C 앱의 신속한 빌드 오류
- objective c - Xcode에서 '앱 확장 용 번들 ID'서명 문제와 일치하는 iOS App Store 프로비저닝 프로필을 찾을 수 없습니다
- objective c - DJI SDK를 사용하여 조종기 스틱 값 업데이트를 듣는 방법은 무엇입니까?
당신이 한 말입니다 :
이 줄은의미를 의미합니다. "iOS, 폰트를 줄이려는 느낌이 든다면 계속해서 줄이십시오." 원하지 않으면 말하지 마십시오.
대신, 폰트 크기를 고르십시오. 어떤 크기? NSString은 주어진 글꼴/크기로 그려진 문자열의 크기를 알려줍니다. 따라서 가장 긴 줄을 잡고 원하는 공간에 맞는 것을 찾을 때까지 다른 크기로 순환하십시오.
나만의 가치를 여기에 넣기 :
(이전에 글꼴을 축소 할 수있는 우아한 문자열 그리기 기능이 있었으며NSString은 얼마나 많이 줄 었는지 알려줄 것입니다. 사용하지 않는 것이 좋습니다.)