Eyebrows
An eyebrows gradient color animation for android.
Install / Use
/learn @Moosphan/EyebrowsREADME
Eyebrows
An sportive and pretty ui library for Android which brings you eyebrows feeling.

How to use
-
Gradle:
Project —>build.gradle:
allprojects { repositories { maven { url "https://maven.google.com" } jcenter() } }Moudle—>build.gradle:
compile 'com.moos:Eyebrows:1.0.0'
-
Maven:
<dependency> <groupId>com.moos</groupId> <artifactId>Eyebrows</artifactId> <version>1.0.0</version> <type>pom</type> </dependency> -
Gradual color background:
If you only want to use the gradual color background, you can use like this:
private Eyebrows eyebrows; private void animateBackground(){ eyebrows = new Eyebrows.Builder() .bindTargetView(targetView) .setDuration(5000) .setGradientAnimation(Eyebrows.ANIM_RED_PURPLE) .build(); } @Override protected void onResume() { super.onResume(); eyebrows.startGradientAnimation(); } @Override protected void onPause() { super.onPause(); eyebrows.stopGradientAnimation(); } -
with sportive bubbles:
If you also want to use the sportive and pretty bubbles to embellish the background, you can use
EyebrowsViewin xml like that:<?xml version="1.0" encoding="utf-8"?> <com.moos.library.view.EyebrowsView android:id="@+id/targetView" android:layout_width="match_parent" android:layout_height="match_parent" app:bubble_min_size="22" app:bubble_max_size="40" xmlns:android="http://schemas.android.com/apk/res/android" tools:context="com.moos.eyebrows.MainActivity" xmlns:tools="http://schemas.android.com/tools"> </com.moos.library.view.EyebrowsView>In activity, you can use more flexible like this:
private EyebrowsView targetView; private Eyebrows eyebrows; private List<Integer> colors = new ArrayList<>(); private Vector<EyebrowsAnimatorMaker> animatorMakers = new Vector<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); targetView = findViewById(R.id.targetView); animateBackground(); animateBubbles(); } private void animateBackground(){ eyebrows = new Eyebrows.Builder() .bindTargetView(targetView) .setDuration(5000) .setGradientAnimation(Eyebrows.ANIM_RED_PURPLE) .build(); } private void animateBubbles(){ colors.add(getResources().getColor(R.color.trans_yellow)); colors.add(getResources().getColor(R.color.trans_white)); colors.add(getResources().getColor(R.color.trans_gray)); targetView.setEyebrowsShapeColors(colors); targetView.setEyebrowsShapeSize(20, 50); animatorMakers.add(new EyebrowsTranslateAnimator(5000, 6000, EyebrowsTranslateAnimator.Direction.UP_TO_DOWN, new AccelerateInterpolator())); animatorMakers.add(new EyebrowsScaleAnimator(2000, 3000, new AccelerateDecelerateInterpolator(), 20, 50)); animatorMakers.add(new EyebrowsShakeAnimator(2000, 3000, EyebrowsShakeAnimator.ShakeDirection.HORIZONTAL, new AccelerateInterpolator())); targetView.setEyebrowsAnimators(animatorMakers); } @Override protected void onResume() { super.onResume(); eyebrows.startGradientAnimation(); } @Override protected void onPause() { super.onPause(); eyebrows.stopGradientAnimation(); }You can set animations for bubbles, I provided with three types of animations like:
EyebrowsTranslateAnimator,EyebrowsScaleAnimator,EyebrowsShakeAnimator.You can customize your own animator for your bubbles, just extend classEyebrowsAnimatorMaker.
To-do
I will try to provide more shapes of trimmings and kinds of animations, i hope you can improve it with me by issues or pull requests.
Thanks to
About me
E-mail:moosphon@gmail.com
Twitter:@Moos47405337
QQ:4674521
License:
Copyright 2018 moosphon
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Related Skills
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
openpencil
2.1kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
openpencil
2.1kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
HappyColorBlend
HappyColorBlendVibe Project Guidelines Project Overview HappyColorBlendVibe is a Figma plugin for color palette generation with advanced tint/shade blending capabilities. It allows designers to
