FABメニューを実現するためのカスタムライブラリはたくさんあります。しかし、私はカスタムライブラリを使用せずにそれを実行したいです。このFABメニューをネイティブで実現したいと考えています。
カスタムライブラリを提案しないでください
Androidのデザインライブラリにアクセスできます。このgradleをビルドファイルに追加します
compile 'com.Android.support:design:23.0.1'
this リンクをたどります。これは、使用方法を示すstackoverflowリンクです。そして this is サンプルアプリのリンク。
例:
<Android.support.design.widget.FloatingActionButton
Android:id="@+id/fab"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_margin="16dp"
Android:clickable="true"
Android:src="@drawable/ic_done"
app:layout_anchor="@id/viewA"
app:layout_anchorGravity="bottom|right|end"/>
複数のファブを作成し、その可視性で遊ぶことができます
[〜#〜]更新[〜#〜]
これを行うには、サードパーティのライブラリを使用する必要があると思います。 this ライブラリを確認してください。これが役立つ場合があります
可視性を使用してこれをネイティブに行うことができます... FAB(ImageView)を押すたびに、アニメーションで可視性が切り替わります。
実際に動作するサンプルコードは作成しませんが、この方法でカスタムフローティングアクションボタンを実装するには、これで十分です。
XML
Android:onClick="fabMainClicked"
Java
public void fabMainClicked(View view)
{
ImageView fabDrop1 = (ImageView) findViewById(R.id.fabDrop1);
ImageView fabDrop2 = (ImageView) findViewById(R.id.fabDrop2);
if (fabDrop1.getVisibility() == fabDrop1.GONE)
{
fabDrop1.setVisibility(fabDrop1.VISIBLE);
fabDrop2.setVisibility(fabDrop2.VISIBLE);
}
}
各ImageViewは、画面上または上にスライドするために、カスタムアニメーターを介してアニメーション化する必要があります。
各ImageViewは、背景としてres/drawableを使用して、中央の画像に円とres/drawableを提供します。
スケールタイプは中央に設定する必要があります。
幸運を。
この依存関係をアプリのbuild.gradleに追加します
compile 'com.Android.support:design:23.1.0'
compile 'com.github.clans:fab:1.6.2'
以下のリンクに従って追加 フローティングアクションメニュー