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
関連記事
-
実機テストしたときのデータを取り出す
Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下
-
viewDidLoadとviewDidLayoutSubviewsのタイミング
真実の記事にある「コードでiPhone6を識別する」話とほんのちょっとだけ繋がっている話で、view
-
iOS9でURLスキームを登録する
私事ですが、iOS8から対応はしたいということで検証用に使っている自分のiPhoneもiOS8でがん
-
Xcode5.1のInterfaceBuilderにおける地味な変更点
iOS7.1に合わせてXcode5.1がリリースされました Xcode Release N
-
UIButtonのappearanceで派生する色設定
以下のコードでUIButtonのappearanceでBackgroundColorの設定をすると、
-
plistファイルに色を入れる
plistファイル中にUIColorを入れたい!という場合。普通RGBAの値を数値で入れるとかするけ
-
UISplitViewControllerの仕切り線の色を設定
UISplitViewControllerで、iPadを横向き(Landscape)にしたときの2つ
-
コードでiPhone6 Plusを識別する簡単な方法
表題の通り、コードでiPhone6 Plusを識別する簡単な方法です。 iPhone6 Plu
- PREV
- メソッドの呼び出し元を調べる
- NEXT
- iOS7の青色