FloatingAction menu button On click option is not working in android -
i'm trying create circular floating action menu button sliding tab. main floating action button working on click event of submenu button not working.
here xml file menu button:
<?xml version="1.0" encoding="utf-8"?> <framelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" > <android.support.design.widget.floatingactionbutton android:id="@+id/fab_1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:src="@android:drawable/ic_menu_compass" android:visibility="invisible" app:backgroundtint="@color/coloraccent" app:fabsize="mini" /> <android.support.design.widget.floatingactionbutton android:id="@+id/fab_2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:src="@android:drawable/ic_menu_myplaces" android:visibility="invisible" app:backgroundtint="@color/coloraccent" app:fabsize="mini" /> <android.support.design.widget.floatingactionbutton android:id="@+id/fab_3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" android:src="@android:drawable/ic_menu_share" android:visibility="invisible" app:backgroundtint="@color/coloraccent" app:fabsize="mini" /> </framelayout> activity_main.xml:
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical"> <include android:id="@+id/app_bar" layout="@layout/app_bar" /> <android.support.v4.widget.drawerlayout xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/drawer_layout"> <linearlayout android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="@android:color/white" > <android.support.design.widget.tablayout android:id="@+id/sliding_tab" style="@style/mycustomtablayout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" app:tabmode="scrollable" /> <android.support.design.widget.coordinatorlayout android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/coordinatorlayout"> <android.support.design.widget.floatingactionbutton android:id="@+id/fab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin" app:srccompat="@android:drawable/ic_dialog_email" /> <include layout="@layout/fab_layout" /> <android.support.v4.view.viewpager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="match_parent" > </android.support.v4.view.viewpager> </android.support.design.widget.coordinatorlayout> </linearlayout> <fragment android:id="@+id/nav_drawer" android:name="com.example.usaukglu.mywallet.navigationdrawer" android:layout_width="@dimen/drawer_width" android:layout_height="match_parent" android:layout_gravity="start" app:layout="@layout/navigation_drawer" tools:layout="@layout/navigation_drawer" /> </android.support.v4.widget.drawerlayout> </linearlayout> here mainactivity.java class:
public class mainactivity extends appcompatactivity { private toolbar toolbar; navigationdrawer navigationdrawer; drawerlayout drawerlayout; floatingactionbutton fab; floatingactionbutton fab1; floatingactionbutton fab2; floatingactionbutton fab3; coordinatorlayout coordinatorlayout; private boolean fab_status=false; animation show_fab_1; animation hide_fab_1; animation show_fab_2; animation hide_fab_2; animation show_fab_3; animation hide_fab_3; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); viewpager viewpager = (viewpager) findviewbyid(r.id.viewpager); tablayout tablayout = (tablayout) findviewbyid(r.id.sliding_tab); toolbar = (toolbar) findviewbyid(r.id.app_bar); drawerlayout = (drawerlayout) findviewbyid(r.id.drawer_layout); setsupportactionbar(toolbar); getsupportactionbar().setdisplayshowhomeenabled(true); viewpager.setadapter(new viewpageradapter(getsupportfragmentmanager(), mainactivity.this)); tablayout.setupwithviewpager(viewpager); navigationdrawer = (navigationdrawer) getsupportfragmentmanager().findfragmentbyid(r.id.nav_drawer); navigationdrawer.setup(r.id.nav_drawer, drawerlayout, toolbar); coordinatorlayout= (coordinatorlayout) findviewbyid(r.id.coordinatorlayout); fab= (floatingactionbutton) findviewbyid(r.id.fab); fab1= (floatingactionbutton) findviewbyid(r.id.fab_1); fab2= (floatingactionbutton) findviewbyid(r.id.fab_2); fab3= (floatingactionbutton) findviewbyid(r.id.fab_3); show_fab_1= animationutils.loadanimation(getapplication(),r.anim.fab1_show); hide_fab_1= animationutils.loadanimation(getapplication(),r.anim.fab1_hide); show_fab_2= animationutils.loadanimation(getapplication(),r.anim.fab2_show); hide_fab_2= animationutils.loadanimation(getapplication(),r.anim.fab2_hide); show_fab_3= animationutils.loadanimation(getapplication(),r.anim.fab3_show); hide_fab_3= animationutils.loadanimation(getapplication(),r.anim.fab3_hide); fab.setonclicklistener(new view.onclicklistener() { @override public void onclick(view view) { if (fab_status == false) { //display fab menu expandfab(); fab_status = true; } else { //close fab menu hidefab(); fab_status = false; } } }); fab1.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { toast.maketext(getapplication(), "floating action button 1", toast.length_short).show(); } }); fab2.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { toast.maketext(getapplication(), "floating action button 2", toast.length_short).show(); } }); fab3.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { toast.maketext(getapplication(), "floating action button 3", toast.length_short).show(); } }); }
add xml layout:
<android.support.design.widget.floatingactionbutton android:id="@+id/myfab" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/your_icon" app:elevation="4dp" ... /> add code behind:
floatingactionbutton myfab = (floatingactionbutton) myview.findviewbyid(r.id.myfab); myfab.setonclicklistener(new view.onclicklistener() { public void onclick(view v) { // todo when floating action menu third item clicked } }); for more details given follow link
floatingactionbutton example support library
http://www.viralandroid.com/2016/02/android-floating-action-menu-example.html
Comments
Post a Comment