0
私はすべての項目 'showAsAction
がifRoom
に設定されたメニューを持っています。今、これらのメニュー項目の中心の正確な位置(x、y)を取得したいと思います。MenuItemの位置を動的に見つける
まず、この情報を基になるビューから取得することを考えましたが、特定のメニュー項目の表示に確実にアクセスする方法がわかりません。 onCreateOptionsMenu
で
:
MenuItem someItem = menu.findItem(R.id.some_action);
// someItem.getX();
// someItem.getY();
私は、これらの座標は、アプリケーションのToolbar
からの相対であることを期待したいです。この場合、中心座標を計算するにはsomeItem.get{Width,Height}()
にアクセスする必要があります。
例メニュー:
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_search"
android:title="@string/action_search"
android:icon="@drawable/ic_search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="ifRoom|collapseActionView" />
<item
android:id="@+id/action_example"
android:title="@string/action_example"
android:icon="@drawable/ic_example"
app:showAsAction="ifRoom" />
</menu>
この使用してみてください:https://stackoverflow.com/questions/16631806/getting-screen-coordinate-of-action-bar-menu-item-for-creating-introduction-screを –