In my opinion, jumping to a new activity to show your menu is a kind of wasting time and life.
So,
I think, we need a hover view, to show menu, to show messages.

Watch HD in YouTube.
Download Apk
Set up RenderScript
renderscriptTargetApi 19
renderscriptSupportMode true
in build.gradle defaultConfig, here is a sampledependencies {
compile "com.android.support:support-v4:20.+"
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.daimajia.easing:library:1.0.0@aar'
compile 'com.daimajia.androidanimations:library:1.1.2@aar'
compile 'com.daimajia.androidviewhover:library:1.0.4@aar'
}
<dependency>
<groupId>com.nineoldandroids</groupId>
<artifactId>library</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>com.daimajia.androidanimation</groupId>
<artifactId>library</artifactId>
<version>1.1.2</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>com.daimajia.easing</groupId>
<artifactId>library</artifactId>
<version>1.0.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>com.daimajia.androidviewhover</groupId>
<artifactId>library</artifactId>
<version>1.0.4</version>
<type>apklib</type>
</dependency>

Create an original view, and make sure it was wrapped by BlurLayout
for example:
<com.daimajia.androidviewhover.BlurLayout
android:id="@+id/sample"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_centerInParent="true"
android:scaleType="fitXY"
android:src="@drawable/kid"
android:layout_width="match_parent"/>
</com.daimajia.androidviewhover.BlurLayout>
Note: BlurLayout is entended from RelativeLayout. You can use the RelativeLayout rules to layout your view.
Create a hover view, there is no rules to obey. Just please remember that this view will be stretched as large as the original view you have created.
Bind a hover view to BlurLayout
BlurLayout sampleLayout = (BlurLayout)findViewById(R.id.sample);
View hover = LayoutInflater.from(mContext).inflate(R.layout.hover, null);
sampleLayout.setHoverView(hover);
and don't forget that you can add various animations just in one line code. For example:
//View (R.id.heart) appear animation.
sampleLayout.addChildAppearAnimator(hover, R.id.heart, Techniques.FlipInX);
//View (R.id.heart) disappear animation.
sampleLayout.addChildDisappearAnimator(hover, R.id.heart, Techniques.FlipOutX);
You can view the samples in my preset examples.
This project provides a lot of animations you can choose. Animations are from my another open-source project AndroidViewAnimations. And you can aslo using easing funcitons to make your animations more real. Please enjoy it.
A student in mainland China.
Welcome to offer me an internship. If you have any new idea about this project, feel free to contact me.
Overall
Maintained
Code review
Latest release
Releases this year
275 followers · starred Sep 2015
402 followers · starred Aug 2014
290 followers · starred Aug 2014
In my opinion, jumping to a new activity to show your menu is a kind of wasting time and life.
So,
I think, we need a hover view, to show menu, to show messages.

Watch HD in YouTube.
Download Apk
Set up RenderScript
renderscriptTargetApi 19
renderscriptSupportMode true
in build.gradle defaultConfig, here is a sampledependencies {
compile "com.android.support:support-v4:20.+"
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.daimajia.easing:library:1.0.0@aar'
compile 'com.daimajia.androidanimations:library:1.1.2@aar'
compile 'com.daimajia.androidviewhover:library:1.0.4@aar'
}
<dependency>
<groupId>com.nineoldandroids</groupId>
<artifactId>library</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>com.daimajia.androidanimation</groupId>
<artifactId>library</artifactId>
<version>1.1.2</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>com.daimajia.easing</groupId>
<artifactId>library</artifactId>
<version>1.0.0</version>
<type>apklib</type>
</dependency>
<dependency>
<groupId>com.daimajia.androidviewhover</groupId>
<artifactId>library</artifactId>
<version>1.0.4</version>
<type>apklib</type>
</dependency>

Create an original view, and make sure it was wrapped by BlurLayout
for example:
<com.daimajia.androidviewhover.BlurLayout
android:id="@+id/sample"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_centerInParent="true"
android:scaleType="fitXY"
android:src="@drawable/kid"
android:layout_width="match_parent"/>
</com.daimajia.androidviewhover.BlurLayout>
Note: BlurLayout is entended from RelativeLayout. You can use the RelativeLayout rules to layout your view.
Create a hover view, there is no rules to obey. Just please remember that this view will be stretched as large as the original view you have created.
Bind a hover view to BlurLayout
BlurLayout sampleLayout = (BlurLayout)findViewById(R.id.sample);
View hover = LayoutInflater.from(mContext).inflate(R.layout.hover, null);
sampleLayout.setHoverView(hover);
and don't forget that you can add various animations just in one line code. For example:
//View (R.id.heart) appear animation.
sampleLayout.addChildAppearAnimator(hover, R.id.heart, Techniques.FlipInX);
//View (R.id.heart) disappear animation.
sampleLayout.addChildDisappearAnimator(hover, R.id.heart, Techniques.FlipOutX);
You can view the samples in my preset examples.
This project provides a lot of animations you can choose. Animations are from my another open-source project AndroidViewAnimations. And you can aslo using easing funcitons to make your animations more real. Please enjoy it.
A student in mainland China.
Welcome to offer me an internship. If you have any new idea about this project, feel free to contact me.
Overall
Maintained
Code review
Latest release
Releases this year
275 followers · starred Sep 2015
402 followers · starred Aug 2014
290 followers · starred Aug 2014