2

いくつUIMenuControllerかの追加アイテムを追加した があります。メニューを選択したテキストの下にしたいので、試しました:

[UIMenuController sharedMenuController].arrowDirection = UIMenuControllerArrowDown;

それは何もしないようで、私が試したすべてのことは、テキストの下にメニューを配置しません。

どうやってやるの?

4

1 に答える 1

0

docsに従ってarrowDirection、矢印が指す方向を設定します。ターゲット領域に対するメニューの位置とは関係ありません。また、 を超えるメニューの配置を制御できないようにも見えますsetTargetRect:inView

本当にテキストの下にメニューを配置したい場合は、「偽の」ターゲット領域を設定し、矢印の方向を変更して「実際の」関心領域を指すようにすることができます。

ただし、おそらく Apple がこのようにするのには理由があります。私の推測?指でテキストを選択すると、テキストの下の画面の一部が手で覆われている可能性があります。そのため、そこにメニューが表示されてもあまり役に立ちません。通常、標準の UI 規則との一貫性を破るためにわざわざ努力する価値はありません。

于 2012-03-21T06:17:26.903 に答える