ObjecTips

Swift & Objective-C で iOS とか macOS とか

UITableViewCell のメニューの表示位置をカスタマイズする

まず UITableView のセルのメニュー表示の実装方法はこちら

前回の方法では UITableViewDelegate を使ってメニュー表示をする時と同じ標準的な位置にメニューが表示される。
セルへのメニューの表示は以下のコードで、rect を変更すれば自由にメニューの表示位置をカスタマイズする事ができる。

f:id:Koze:20150629054938p:plain

Ex.1

rect の y を rect の中心位置にして、height を小さい値にするとセルの中心へメニューの矢印を持ってくる事ができる。
標準的な高さのセルであればこの方が視覚的に分かりやすいかも知れない。

f:id:Koze:20150629054947p:plain

Ex.2

セルが right detail なスタイルで右側のラベルの値をコピーする場合には、メニューも右側のラベルに対して表示させた方が分かりやすいかも知れない。

f:id:Koze:20150629055020p:plain

Ex.3

Ex.1とEx2.の合わせ技

f:id:Koze:20150629055030p:plain

それぞれお好みで。