專案需求討論 — 待機介面

青蛙要fly發表於2017-12-29

一天,產品經理走過來搭了下我的肩膀。
產品經理:我要我們的APP有一個酷炫的待機介面。
我:可以啊,你要怎麼樣的介面?
產品經理:我也不知道啊,要麼像手機店裡面那種展覽的手機知道不,不是經常有個待機介面,那種顏色不停變化的那種,我們也搞個這種,然後就五彩斑斕的黑色,記住哦。弄好給我看看效果
我:產品經理666,mmp,產品經理一個需求就夠我玩一年....

專案需求討論 — 待機介面
反正我不是讀書人

我走到美工那裡,準備甩鍋,
我:產品經理要五彩斑斕的黑色,反正我也不知道,別問我具體東西,你看著辦吧。
美工:XXXXXXXXXXXXX。

專案需求討論 — 待機介面

最後美工給了我一組顏色值:

專案需求討論 — 待機介面

然後說她的任務完成了。也不管了。又把鍋扔給我。

最後打算用我所標識的1-2-3的順序來做。

專案需求討論 — 待機介面

(PS:轉成gif後變的很模糊很奇怪了.....)

專案需求討論 — 待機介面

根據美工給的色值,我們可以先做四個介面:

專案需求討論 — 待機介面

color_first.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
        android:startColor="#81FFEF"
        android:endColor="#F067B4"
        android:angle="0"/>
</shape>
複製程式碼

color_second.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
        android:startColor="#F6D242"
        android:endColor="#FF52E5"
        android:angle="135"/>
</shape>
複製程式碼

color_third.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
        android:startColor="#FFA8A8"
        android:endColor="#FCFF00"
        android:angle="135"/>
</shape>
複製程式碼

color_firth.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
        android:startColor="#81FFEF"
        android:endColor="#FFA8A8"
        android:angle="135"/>
</shape>
複製程式碼

我們四個介面都做好了。我們把它們四個放在一起: color_list.xml:

<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
    >
    <item
        android:drawable="@drawable/color_first"
        android:duration="3000" />
    <item
        android:drawable="@drawable/color_second"
        android:duration="3000" />
    <item
        android:drawable="@drawable/color_third"
        android:duration="3000" />

    <item
        android:drawable="@drawable/color_firth"
        android:duration="3000" />

</animation-list>
複製程式碼

activity_layout.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ll_splash"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/color_list"
    android:orientation="vertical">

</LinearLayout>
複製程式碼

Activity.java:

public class SplashActivity extends Activity {
    AnimationDrawable anim;
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_splash);
        
        LinearLayout container = (LinearLayout) findViewById(R.id.ll_splash);
        anim = (AnimationDrawable) container.getBackground();
        anim.setEnterFadeDuration(2000);
        anim.setExitFadeDuration(1000);
    }

    @Override
    protected void onResume() {
        super.onResume();
        if (anim != null && !anim.isRunning())
            anim.start();
    }
    
    @Override
    protected void onPause() {
        super.onPause();
        if (anim != null && anim.isRunning())
            anim.stop();
    }
}

複製程式碼

專案需求討論 — 待機介面

相關文章