web-dev-qa-db-ja.com

Androidフローティングアクションボタンのオプションメニュー

enter image description here

FABメニューを実現するためのカスタムライブラリはたくさんあります。しかし、私はカスタムライブラリを使用せずにそれを実行したいです。このFABメニューをネイティブで実現したいと考えています。

カスタムライブラリを提案しないでください

14
asad.qazi

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 ライブラリを確認してください。これが役立つ場合があります

3
droidev

可視性を使用してこれをネイティブに行うことができます... 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を提供します。

スケールタイプは中央に設定する必要があります。

幸運を。

0
Gadget Guru

この依存関係をアプリのbuild.gradleに追加します

compile 'com.Android.support:design:23.1.0' 
 compile 'com.github.clans:fab:1.6.2'

以下のリンクに従って追加 フローティングアクションメニュー

0
Virendra Kachhi