*

【iPhone 開発 Swift Objective-c】行の高さを動的に変更する

apple-swift

UITableViewの行の高さを中に貼ったラベルの文字数に応じて動的に変更したい場合があります。

知ってしまえば簡単なのですが、苦労してやっと解決しました。

リアル・ネットともにヒントを下さった方に本当に感謝します。

同じような問題に出会った方が私のように苦しまず、あっさり進んでくれたら幸せです。

お役に立てればと思い共有します。

スポンサーリンク

 

iOS7と8 、XCode6です。ソースをSwift, Objective-c丸ごと全部公開します。

1〜1万行までテストし問題なく動作しました。ぴったり表示します!

iOS8以降のみ対応すれば良いということであれば未検証ですが、UITableViewAutomaticDimensionを使用するととても簡単にできるみたいなのでそちらを使ったほうがよいかもれません。

 

<ポイントその1>

 

ラベルの制約は上左右で下は付けません。

スクリーンショット 2015-01-21 19.40.09

 

<ポイント その2>

 

Linesは本来0設定するべきですが、iOS7,8両対応しようとするので警告が出るのでとりあえず1にしておき後からコードで0を設定し直します。

LineBreaks=CharacterWrap、今回はソース内のラベルの特定はタグを使用してますのでTag=1を指定します。

スクリーンショット 2015-01-21 19.31.44

 

あとはソースの記述です。肝となる関数は2つです

1つめの関数:

・・・ラベルをタグに指定した番号で特定し、文字を入れます。

StotyBordでLinesを1にしたので無限行であることを示す0に設定します。

 

 2つめの関数:

・・・1つめの関数と同じ文字列で矩形を作り、その高さを返します。

let bounds = CGSizeMake(self.view.frame.size.width – 16, CGFloat.max)の−16はストーリーボードで指定した制約の左と右の横幅の固定空白です。

 

ソースはこちらからどうぞ!(^^)

ad

ad

関連記事

禁煙駅伝 名言集

禁煙駅伝のリリースから2年半、これまで6万人・230万回以上の励まし合...

記事を読む

人を信じています。

小さい頃病気をしてからなのか、マラソンが苦手だった。 男女含め学校で...

記事を読む

1年の出来事

今年も残すところあとわずかとなりました。 私事ですが、1年を振り返っ...

記事を読む

【アレルギー共村地区】をリリースしました

本日、Apple社の審査が通り新しいアプリがリリースされました。 こ...

記事を読む

禁煙駅伝 東京オフ会を開催しました

禁煙駅伝の東京オフ会が開催されました! アプリだけでなく、リアル...

記事を読む

新着記事

禁煙駅伝 名言集

禁煙駅伝のリリースから2年半、これまで6万人・230万回以上の励まし合...

記事を読む

人を信じています。

小さい頃病気をしてからなのか、マラソンが苦手だった。 男女含め学校で...

記事を読む

1年の出来事

今年も残すところあとわずかとなりました。 私事ですが、1年を振り返っ...

記事を読む

名古屋アプリ開発者ミーティングが開催されました(ドローンってすごい!)

名古屋アプリ開発者ミーティングが開催されました。 集まった方々は...

記事を読む

【アレルギー共村地区】をリリースしました

本日、Apple社の審査が通り新しいアプリがリリースされました。 こ...

記事を読む

コメント/トラックバック

トラックバック用URL:

この投稿のコメント・トラックバックRSS




管理人にのみ公開されます

*

ad

禁煙駅伝 名言集

禁煙駅伝のリリースから2年半、これまで6万人・230万回以上の励まし合...

人を信じています。

小さい頃病気をしてからなのか、マラソンが苦手だった。 男女含め学校で...

1年の出来事

今年も残すところあとわずかとなりました。 私事ですが、1年を振り返っ...

名古屋アプリ開発者ミーティングが開催されました(ドローンってすごい!)

名古屋アプリ開発者ミーティングが開催されました。 集まった方々は...

【アレルギー共村地区】をリリースしました

本日、Apple社の審査が通り新しいアプリがリリースされました。 こ...

→もっと見る

PAGE TOP ↑