2012-03-05 4 views
0

最新のSDKとXCode 4.2でiOS 4アプリケーションを開発しています。' n'で文字列を分割し、それをUITableViewCellに挿入して高さを取得します。

ウェブサービスを使用してテキストデータを取得しています。私はその長さを知らないので、その文字列を分割してカスタム内に収まるようにする必要がありますUITableViewCell

このカスタムUITableViewCellUILabelです。このラベルは、Webサービスから取得されたテキストで埋められます。

テキストは、国の名前になります:スペイン、フランス、アメリカ、イタリアなど私はユニークの文字列にそれらを追加するために、この名前を処理します。私はこのようにします:"スペイン - フランス - アメリカ - ..."

私の問題の一つは、このラインがとても長くなるということでした、と私はフィットUILabel幅に行に分割する必要があります。文字列がUILabelの幅よりも大きくなる場合は、 ' - 'を追加するたびにこの問題を解決しました。だから、私はこのような文字列を持っています:"スペイン - フランス\ nUSA - ..."。

今、私はUILabelの内側に収まる\ nはの文字列を持っています。だから、UITableViewCellの高さをUILabelの高さに合わせて変更する必要があります。

しかし、私が[NSString sizeWithFont:[UIFont systemFontOfSize:kFontSize]];を使用すると、私は実際の高さを得られません、私はいつも21.0fを得ています。

私はこれを見つけました。UITableViewの動的高さについてはtutorialでしたが、私のコードでどのように使用するのか分かりません。 「 - 」

一言で言えばでは、私はを追加する必要があります(文字列はUILabelによって別の行にレンダリングされるので)国名に文字を、それが行わリターンがあり、私は持っていません。 ' - 'を追加します。私は、この文字列を取得する場合と、私はカスタムUITableViewCellUILabelまでの高さのサイズを変更する必要があります。

ヒント?

答えて

1

これはあなたが探しているものですか?

//create a CGFloat variable 
CGFloat _height = 0; 
//find out the size for your text. Instead of 255 insert the width of your label 
CGSize _textSize = [yourString sizeWithFont:[UIFont systemFontOfSize:kFontSize] constrainedToSize:(CGSize) { 255, 9999 }]; 
//add the height of that CGSize variable to your height in case you will need to add more values 
_height += _textSize.height; 
//eventually some other calculations 

は、それが

+0

感謝をお役に立てば幸いです。私はそれを試し、私はあなたに伝えます。 – VansFannel

+1

@VansFannelこれは私のプロジェクトのコードです。数ヶ月前に動作しました:) – Novarg

関連する問題