ActionBar の右端に「ハンドル」があるプルダウン ビューを実装する必要があります。全幅で、ハンドルがクリックされたときにアニメーションで開く必要があり、さらにハンドル自体がドラッグ可能である必要があります。minSdkVersion は 8 です
プルダウン機能自体に関しては、SlidingDrawerは API v17 で廃止され、下から上にしか開くことができないため、法案に適合しないことがわかりました。コントロールSlidingTrayはその問題を克服しているようです。完全にテストしていませんが、期待どおりに動作するようです。
では本題へ。そのような方法でビューを表示することさえ可能ですか? ActionBar のカスタム ビューを設定しようとしました。拡張された XML は次のようになります。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<my.package.drawer.SlidingTray
android:id="@+id/drawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:content="@+id/content"
android:handle="@+id/handle" >
<ImageView
android:id="@+id/handle"
android:layout_width="88dp"
android:layout_height="44dp"
android:src="@drawable/ic_launcher" />
<Button
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</my.package.drawer.SlidingTray>
</RelativeLayout>
現在、SlidingTray ビュー自体は、アクティビティ/フラグメント レイアウト (ハンドルをドラッグしてクリックしてトレイを開閉できます) に配置すると期待どおりに機能しますが、ActionBar 内で上のレイアウトを膨張させ、/ を押すと、ハンドルをドラッグすると、トレイは停止する前に数ピクセル移動するだけで、ActionBar の境界を超えません。これが主な問題です。ビューは ActionBar 自体を超えることができますか (以下に表示されるアクティビティを超えます)。