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
関連記事
-
-
iOS9でURLスキームを登録する
私事ですが、iOS8から対応はしたいということで検証用に使っている自分のiPhoneもiOS8でがん
-
-
ENMLからHTMLへの変換
最近EvernoteAPIをいじっているので、コレに関するノウハウをとりあえず断片的に引っかかったと
-
-
Xcode5.1のInterfaceBuilderにおける地味な変更点
iOS7.1に合わせてXcode5.1がリリースされました Xcode Release N
-
-
Size ClassとUIViewController.view
タイトルの件でちょっとハマったことがある上に、特に日本語情報もStackOverflowからも情報が
-
-
CoreDataのソートとsectionNameKeyPathの関係
CoreDataをフェッチするときに、indexPathのsectionにできるsectionNam
-
-
Realmで==ができなかった
最近Realm Swiftを使ってて、引っかかったところがあるのでメモ。 Realmのオブジェクト
-
-
iOSシミュレータの帯域制限をテストする
iOSシミュレータで通信帯域制限をテストしたいと思ったんですが、Xcode8からXcode7.xとは
-
-
NSAttributedStringをローカライズする方法
NSAttributedStringをLocalizeするうまい方法はないものかと探したら、これが手
-
-
RealmのList
とArray の相互変換によるマップ Realm+ObjectMapperを使って、RealmのオブジェクトをJSON変換してたのですが
- PREV
- メソッドの呼び出し元を調べる
- NEXT
- iOS7の青色

