UITableViewのセルセパレータが画像の下部分だけ切れる場合の対応
公開日:
:
最終更新日:2014/02/24
Tips iOS7, UIEdgeInsets, UIImage, UITableView
iOS7のUItableViewCellだと、UITableView.imageViewに画像を設定すると下のセルとのセパレータが消えてしまう。画像だとわかりにくいが、セルの画像の真下に当たる部分は線が消えてる。これはiOS7の仕様らしい。
線を入れたい場合、viewDidLoadに以下のように記述。iOS6.xにはメソッドがないようなので、メソッドの有無はチェックしてる。
UITableViewControllerに実装していると想定しているので、tableViewプロパティは当然UITableViewを指している。
if ([self.tableView respondsToSelector:@selector(setSeparatorInset:)]) {
[self.tableView setSeparatorInset:UIEdgeInsetsZero];
}

修正後はご覧のとおり、下に線が出てくれる。
iOS7では細かい表示仕様がいろいろ変わっているのだが、こういうのをデフォルトにし直されて、こっちが小細工することを要求されるのはなにか違う感じがする。
将来的には淘汰されて「新しいほうがデフォルト」のほうが断然良くなる、ということは頭ではわかるのだが。
参照サイト:
stackoverflow
関連記事
-
-
CoreDataのソートとsectionNameKeyPathの関係
CoreDataをフェッチするときに、indexPathのsectionにできるsectionNam
-
-
UITableViewのヘッダに小文字を入れる
UITableViewのセクションヘッダをStoryboardでカスタマイズするという話題を以前掲載
-
-
iPadのUIModalPresentationFormSheetでキーボードが閉じない
iPadでUIModalPresentationFormSheet(全画面ではなく、中央にフロートし
-
-
Bitbucketの画面の日本語化/コミット時に同時プッシュを行う
前回の記事の続きで、Bitbucketの画面の日本語化と、Xcodeでコミットするときに同時にpus
-
-
NSAttributedStringをローカライズする方法
NSAttributedStringをLocalizeするうまい方法はないものかと探したら、これが手
-
-
UIButtonのLocalizeに関するTips
Storyboardに設置したUIButtonのタイトルのLocalizeをしてたのですが、英語では
-
-
iOS8のシミュレーターでLocalizationのテストをする
iOS8.1のシミュレーターでは、従前できていたシミュレーター内での「設定」(Setting)からの
-
-
RealmのList
とArray の相互変換によるマップ Realm+ObjectMapperを使って、RealmのオブジェクトをJSON変換してたのですが
-
-
”No Scheme”になってしまった場合の対応
知人がXcodeで突然「No Scheme」表示になってRunするターゲットとデバイスが選択できない
- PREV
- メソッドの呼び出し元を調べる
- NEXT
- iOS7の青色

