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
関連記事
-
-
UIAlertControllerの取り扱い
旧聞ですが日本語版のStackOverflowが始動したようですね。 個人的な印象は「フィルタされ
-
-
Size ClassとUIViewController.view
タイトルの件でちょっとハマったことがある上に、特に日本語情報もStackOverflowからも情報が
-
-
NSStringのフォーマット書式
Appleのページになく、IEEEのprintfフォーマットのページにあるので、C言語と親しくしてな
-
-
ソースコードからStoryboardにアクセスする
複数のStoryboardを利用して、自分以外のStoryboardに遷移させるような展開をしたい場
-
-
iOS7でカメラ撮影時のステータスバーを消す
UIImagePickerControllerをカメラモードで表示するとステータスバーがカメラの一番
-
-
CoreDataのソートとsectionNameKeyPathの関係
CoreDataをフェッチするときに、indexPathのsectionにできるsectionNam
-
-
UIButtonのLocalizeに関するTips
Storyboardに設置したUIButtonのタイトルのLocalizeをしてたのですが、英語では
-
-
viewDidLoadとviewDidLayoutSubviewsのタイミング
真実の記事にある「コードでiPhone6を識別する」話とほんのちょっとだけ繋がっている話で、view
- PREV
- メソッドの呼び出し元を調べる
- NEXT
- iOS7の青色