【iPhone 開発 Swift Objective-c】行の高さを動的に変更する
UITableViewの行の高さを中に貼ったラベルの文字数に応じて動的に変更したい場合があります。
知ってしまえば簡単なのですが、苦労してやっと解決しました。
リアル・ネットともにヒントを下さった方に本当に感謝します。
同じような問題に出会った方が私のように苦しまず、あっさり進んでくれたら幸せです。
お役に立てればと思い共有します。
まついゆたか (@YutakaMatsui)
UITableViewの行の高さを中に貼ったラベルの文字数に応じて動的に変更したい場合があります。
知ってしまえば簡単なのですが、苦労してやっと解決しました。
リアル・ネットともにヒントを下さった方に本当に感謝します。
同じような問題に出会った方が私のように苦しまず、あっさり進んでくれたら幸せです。
お役に立てればと思い共有します。
スポンサーリンク
iOS7と8 、XCode6です。ソースをSwift, Objective-c丸ごと全部公開します。
1〜1万行までテストし問題なく動作しました。ぴったり表示します!
iOS8以降のみ対応すれば良いということであれば未検証ですが、UITableViewAutomaticDimensionを使用するととても簡単にできるみたいなのでそちらを使ったほうがよいかもれません。
ラベルの制約は上左右で下は付けません。
Linesは本来0設定するべきですが、iOS7,8両対応しようとするので警告が出るのでとりあえず1にしておき後からコードで0を設定し直します。
LineBreaks=CharacterWrap、今回はソース内のラベルの特定はタグを使用してますのでTag=1を指定します。
あとはソースの記述です。肝となる関数は2つです
[crayon-673ef85a8a099408806917/]
・・・ラベルをタグに指定した番号で特定し、文字を入れます。
StotyBordでLinesを1にしたので無限行であることを示す0に設定します。
[crayon-673ef85a8a09f714251310/]
・・・1つめの関数と同じ文字列で矩形を作り、その高さを返します。
let bounds = CGSizeMake(self.view.frame.size.width – 16, CGFloat.max)の−16はストーリーボードで指定した制約の左と右の横幅の固定空白です。
スポンサーリンク
2015/01/21 | iPhone, iPhoneアプリ開発, XCode iOS, UITableView, 行の高さ
私たち禁煙駅伝のお仲間が19万人を超えました。これまで多くの皆様と共...
今回も多くの方にお集まりいただき、とても良い時間を過ごすことができまし...
🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🍀🥽🧤AR(仮想現実)機能を搭...
2019年9月より、和歌山県福祉保健部健康局 健康推進課様より...
いつも禁煙駅伝をお使いいただきまして、ありがとうございます。 ...
禁煙駅伝アプリの概要の紹介スライドです。 禁煙...
QRコードアプリを紹介いただきました。 「QRコードリーダー&...
「禁煙駅伝」アプリをご紹介いただきました。https://bit.l...
50歳目前にして学士を取得しました。仕事をするのに実績があれば資格は不要のIT業界ではあるのですが、いつか海外 […]
50歳目前にして学士を取得しました。仕事をするのに実績があれば資格は...
アプリ「禁煙駅伝」は商標登録出願中です。商願2024-60366 アプリ:「禁煙駅伝」 〜 みんなの応援で禁煙 […]
アプリ「禁煙駅伝」は商標登録出願中です。商願2024-60366 ...
禁煙駅伝アプリの概要の紹介スライドです。 アプリ:「禁煙駅伝」 〜 みんなの応援で禁煙を達成しよう!〜 【禁煙 […]
禁煙駅伝アプリの概要の紹介スライドです。 禁煙...
QRコードアプリを紹介いただきました。 「QRコードリーダー for iPhone&nbs […]
QRコードアプリを紹介いただきました。 「QRコードリーダー&...
「禁煙駅伝」アプリをご紹介いただきました。https://bit.ly/4bWXSlT アプリ:「禁煙駅伝」 […]
「禁煙駅伝」アプリをご紹介いただきました。https://bit.l...
コメント/トラックバック
トラックバック用URL:
この投稿のコメント・トラックバックRSS