0

私のアプリのメイン画面は、いくつかのオプションを備えた静的なテーブルビューです。新しいiPhone5では、画面の下部に余分なスペースを配置する必要があります。画面のサイズに応じてセルの高さを増やし、その結果、その中のラベルのフォントサイズを拡大縮小したいと思います。自動レイアウトのみを使用してそれを行う方法はありますか?そうでない場合、どちらが最善の方法ですか?

4

1 に答える 1

2

iPhone5の解像度でテーブルビューのセルを拡大するのは良い習慣ではないと思います。彼らがあなたにもっと多くのピクセルを与えた理由は、ユーザーがより多くの画面を見ることができるようにするためです。

これを行うことを主張する場合は、テーブルビューデリゲートメソッドで行の高さを設定し、画面の高さをチェックして、次を使用して568ポイント(iPhone 5の高さ)かどうかを確認できます[[UIScreen mainScreen] bounds].size.height

// sets the height for a row based on indexPath
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

    // check if the iPhone 5 is used by using the screen height
    BOOL isIPhone5Used = ([[UIScreen mainScreen] bounds].size.height == 568.0f);

    // set the height to a larger number for iPhone 5 rows
    return (isIPhone5Used ? 50.0f : 44.0f); // this sets a height of 50 for iPhone 5 rows, and 44 for all other iPhones

}

indexPathさまざまな行に異なる高さを使用する場合は、に応じてカスタマイズする必要があります。または、すべての行が同じ高さの場合は1つの値を返します。

于 2012-12-11T16:13:17.073 に答える