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
関連記事
-
-
StoryboardからPopoverを作っても位置合わせコードは必要
これだけだとわかりづらいんですが。 XcodeのStoryboardから、Segueを"Prese
-
-
GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法
情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初のシート)をCSVとしてエクス
-
-
Bitbucketの画面の日本語化/コミット時に同時プッシュを行う
前回の記事の続きで、Bitbucketの画面の日本語化と、Xcodeでコミットするときに同時にpus
-
-
iOSシミュレータの帯域制限をテストする
iOSシミュレータで通信帯域制限をテストしたいと思ったんですが、Xcode8からXcode7.xとは
-
-
CoreDataのソートとsectionNameKeyPathの関係
CoreDataをフェッチするときに、indexPathのsectionにできるsectionNam
-
-
実機テストしたときのデータを取り出す
Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下
-
-
iPad用storyboard⇔iPhone用Storyboardへの変換
iPad用アプリとしてiPad用前提のstoryboardから、iPhone対応にするにあたり、si
-
-
アプリ内で自動スリープの設定を無効化する
「設定」アプリ内で設定したスリープ時間設定を無効にするためのコード。 アプリがバックグラウンドにな
-
-
Xcode5.1のInterfaceBuilderにおける地味な変更点
iOS7.1に合わせてXcode5.1がリリースされました Xcode Release N
-
-
UILabelの改行をInterfaceBuilderから入力する
UILabelの行数は任意に設定できて、「0」を指定すると行数を限定しないで(UILabelのbou
- PREV
- メソッドの呼び出し元を調べる
- NEXT
- iOS7の青色

