*

【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万回以上の励まし合...

記事を読む

人を信じています。

[adsense] 小さい頃病気をしてからなのか、マ...

記事を読む

新着記事

禁煙駅伝 名古屋オフ会

名古屋オフ会が開催されました。 皆様関東など遠くからお越しいただ...

記事を読む

禁煙の見える化 隠されたメッセージ?

禁煙駅伝のお仲間の方に、素晴らしい絵を描いてもらいました! ...

記事を読む

禁煙の見える化

禁煙駅伝のお仲間の方に、素晴らしい絵を描いてもらいました! ...

記事を読む

フリーになって4年

[adsense] あれからたくさんの人に出...

記事を読む

禁煙駅伝 名言集

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

記事を読む

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

トラックバック用URL:

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




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

*

ad

禁煙駅伝 名古屋オフ会

名古屋オフ会が開催されました。 皆様関東など遠くからお越しいただ...

禁煙の見える化 隠されたメッセージ?

禁煙駅伝のお仲間の方に、素晴らしい絵を描いてもらいました! ...

禁煙の見える化

禁煙駅伝のお仲間の方に、素晴らしい絵を描いてもらいました! ...

フリーになって4年

[adsense] あれからたくさんの人に出...

禁煙駅伝 名言集

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

→もっと見る

PAGE TOP ↑