A button like Path APP, when we click the button, it will pop some other buttons.
PopButton是一个用于实现类似Path点聚式导航的控件,查看中文介绍
Download this code, copy *.java and activity.xml to your project.
declare activity in manifast
<activityandroid:name=".activity.PopActivity"android:theme="@android:style/Theme.Translucent" /> create a xml for layout, like:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_main"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.steveyg.popbutton.activity.MainActivity"> <com.steveyg.popbutton.view.PopButton android:id="@+id/popbutton"android:layout_centerInParent="true"android:background="@drawable/chooser_button"android:layout_width="50dp"android:layout_height="50dp" /> </RelativeLayout> in Activity, set PopButton's property
mPopButton = (PopButton) findViewById(R.id.popbutton);
mPopButton.getPopmodel()
.setRotateOfMainButton(45)
.setRotateOfMenuButton(360)
.setDurationTime(400)
.setRotateTime(170)
.setRotateDelayTime(125)
.setBackground(0x55000000)
.setNumOfButton(3)
.setRadius(250)
.setMenuDirection(PopModel.UP);set the icon of buttons
int[] res = {R.drawable.icon1,R.drawable.icon2,R.drawable.icon3};
mPopButton.getPopmodel().setButtonImageResource(res);and clicklistener, if you need context, please use "PopActivity.instance"
ArrayList<View.OnClickListener> clickListenerList = newArrayList<>();
for(inti = 0; i < 3 ; i++){
finalintfi = i + 1;
clickListenerList.add(newView.OnClickListener() {
@OverridepublicvoidonClick(Viewv) {
Toast.makeText(PopActivity.instance,"click button" + fi ,Toast.LENGTH_SHORT).show();
}
});
}
mPopButton.getPopmodel().setButtonClickListener(clickListenerList);