Repository: onivas/MenuAnimation Branch: master Commit: 61e38ebece2d Files: 39 Total size: 50.7 KB Directory structure: gitextract_frtm7dz9/ ├── .gitignore ├── README.md ├── app/ │ ├── .gitignore │ ├── app.iml │ ├── build.gradle │ ├── proguard-rules.pro │ └── src/ │ ├── androidTest/ │ │ └── java/ │ │ └── com/ │ │ └── savinoordine/ │ │ └── menuanimation/ │ │ └── ApplicationTest.java │ └── main/ │ ├── AndroidManifest.xml │ ├── java/ │ │ └── com/ │ │ └── savinoordine/ │ │ └── menuanimation/ │ │ └── MyActivity.java │ └── res/ │ ├── layout/ │ │ ├── activity_my.xml │ │ └── main.xml │ ├── layout-land/ │ │ ├── activity_my.xml │ │ └── main.xml │ ├── values/ │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── values-w820dp/ │ └── dimens.xml ├── build.gradle ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── library/ │ ├── .gitignore │ ├── build.gradle │ ├── library.iml │ ├── proguard-rules.pro │ └── src/ │ ├── androidTest/ │ │ └── java/ │ │ └── io/ │ │ └── github/ │ │ └── onivas/ │ │ └── promotedactions/ │ │ └── ApplicationTest.java │ └── main/ │ ├── AndroidManifest.xml │ ├── java/ │ │ └── io/ │ │ └── github/ │ │ └── onivas/ │ │ └── promotedactions/ │ │ └── PromotedActionsLibrary.java │ └── res/ │ ├── drawable/ │ │ ├── onivas_fab_circle.xml │ │ └── rounded_button_shadow.xml │ ├── layout/ │ │ ├── main_promoted_action_button.xml │ │ └── promoted_action_button.xml │ ├── menu/ │ │ └── library_promoted_actions.xml │ ├── values/ │ │ ├── dimens.xml │ │ └── strings.xml │ └── values-w820dp/ │ └── dimens.xml └── settings.gradle ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitignore ================================================ .gradle /local.properties /.idea/workspace.xml /.idea/libraries .DS_Store /build ================================================ FILE: README.md ================================================ # Menu Animation ##Floating Action Button (FAB) based on Material Design By Savino Ordine - io.github.onivas.promotedactions.PromotedActionsLibrary; This is a Lib allow you to create a Promoted Action menu placed on right|bottom corner of the screen. ![Promoted Action zoom animation](https://github.com/onivas/MenuAnimation/blob/master/animationZoom.gif) ![Promoted Action animation](https://github.com/onivas/MenuAnimation/blob/master/app/promotedAction.gif) ##How it works #Import library
import io.github.onivas.promotedactions.PromotedActionsLibrary;
#Steps
FrameLayout frameLayout = (FrameLayout) findViewById(R.id.container);

PromotedActionsLibrary promotedActionsLibrary = new PromotedActionsLibrary();

// setup library
promotedActionsLibrary.setup(getApplicationContext(), frameLayout);

// create onClickListener for each promoted action
View.OnClickListener onClickListener = new View.OnClickListener() {
    @Override
        public void onClick(View view) {
            // Do something
    }
};

// customize promoted actions with a drawable
promotedActionsLibrary.addItem(getResources().getDrawable(android.R.drawable.ic_menu_edit), onClickListener);
promotedActionsLibrary.addItem(getResources().getDrawable(android.R.drawable.ic_menu_send), onClickListener);
promotedActionsLibrary.addItem(getResources().getDrawable(android.R.drawable.ic_input_get), onClickListener);

// create main floating button and customize it with a drawable
promotedActionsLibrary.addMainItem(getResources().getDrawable(android.R.drawable.ic_input_add));

================================================ FILE: app/.gitignore ================================================ /build ================================================ FILE: app/app.iml ================================================ ================================================ FILE: app/build.gradle ================================================ apply plugin: 'com.android.application' android { compileSdkVersion 20 buildToolsVersion "20.0.0" defaultConfig { applicationId "com.savinoordine.menuanimation" minSdkVersion 14 targetSdkVersion 20 versionCode 1 versionName "1.0" } buildTypes { release { runProguard false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':library') } ================================================ FILE: app/proguard-rules.pro ================================================ # Add project specific ProGuard rules here. # By default, the flags in this file are appended to flags specified # in /Users/savino/Documents/adt-bundle-mac-x86_64-20130514/sdk/tools/proguard/proguard-android.txt # You can edit the include path and order by changing the proguardFiles # directive in build.gradle. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html # Add any project specific keep options here: # If your project uses WebView with JS, uncomment the following # and specify the fully qualified class name to the JavaScript interface # class: #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} ================================================ FILE: app/src/androidTest/java/com/savinoordine/menuanimation/ApplicationTest.java ================================================ package com.savinoordine.menuanimation; import android.app.Application; import android.test.ApplicationTestCase; /** * Testing Fundamentals */ public class ApplicationTest extends ApplicationTestCase { public ApplicationTest() { super(Application.class); } } ================================================ FILE: app/src/main/AndroidManifest.xml ================================================ ================================================ FILE: app/src/main/java/com/savinoordine/menuanimation/MyActivity.java ================================================ package com.savinoordine.menuanimation; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.FrameLayout; import android.widget.Toast; import io.github.onivas.promotedactions.PromotedActionsLibrary; public class MyActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); FrameLayout frameLayout = (FrameLayout) findViewById(R.id.container); PromotedActionsLibrary promotedActionsLibrary = new PromotedActionsLibrary(); promotedActionsLibrary.setup(getApplicationContext(), frameLayout); View.OnClickListener onClickListener = new View.OnClickListener() { @Override public void onClick(View view) { Toast.makeText(getApplicationContext(), "Button clicked.", Toast.LENGTH_SHORT).show(); } }; promotedActionsLibrary.addItem(getResources().getDrawable(android.R.drawable.ic_menu_edit), onClickListener); promotedActionsLibrary.addItem(getResources().getDrawable(android.R.drawable.ic_menu_send), onClickListener); promotedActionsLibrary.addItem(getResources().getDrawable(android.R.drawable.ic_input_get), onClickListener); promotedActionsLibrary.addMainItem(getResources().getDrawable(R.drawable.ic_add)); } } ================================================ FILE: app/src/main/res/layout/activity_my.xml ================================================