1. 程式人生 > >程式設計師表白程式,開放原始碼在此!

程式設計師表白程式,開放原始碼在此!

寫在前面:

原始碼地址:https://github.com/wuxia2001/mylove.git

APK 地址:http://zhushou.360.cn/detail/index/soft_id/1380324 

CSDN 下載地址:http://download.csdn.net/detail/wuxia2001/8703091

先上圖:

640?wx_fmt=gif&wxfrom=5&wx_lazy=1640?wx_fmt=gif

這次上的都是 GIF,通過手機錄屏得到的。

主要改動在於多了一個介面,然後對部分介面進行修改,增快的播放速度。

這裡增加了一種進入設定介面方法,以前的先點選單再點返回依然有效,增加了在任何介面連擊三下就可進入設定介面。

連擊三下(兩下)程式碼如下:

在最外圍的佈局裡增加 click 事件,記錄點選時間和次數,並在一定時間內清空時間和次數,就得得到三次連擊。

[java] view plain copy
f1.setOnClickListener(new OnClickListener() {  
     
   @Override  
   public void onClick(View v
{  
       // TODO Auto-generated method stub  
       if((System.currentTimeMillis()-lastclicktime)<=1500){  
           lastclicktime = System.currentTimeMillis();  
           clicktimes++;  
       }else
{  
           lastclicktime=System.currentTimeMillis();  
       }  
       if(clicktimes>=2) gotoConfigAcitvity();  
       handler.sendEmptyMessageDelayed(CACLICK, 4000);  
             
   }  
});

從 gif 圖片上可以看到進入到設定介面有個動態效果,這個效果取自於 SmoothTransition, 地址為:https://github.com/dkmeteor/SmoothTransition。

他己完整的對整個過程都封裝了,提供了翻轉,淡入淡出,左飛入,上飛入,scale 等效果,可以對整個介面和 fragment 使用,具體效果請去看他的 demo。

對於這個過程,可以對幾個動畫效果聯合在一起使用,這個效果是對整個效果的所有控制元件,先 setAlpha(0), 然後逐步用屬性動畫把所有控制元件顯示出來,適用範圍很廣,也要拆分開來,對一個 layout 裡的小布局使用,比如我第四個介面裡的部分效果。

[java] view plain copy
<span style="white-space:pre">    </span>//在拆開使用前要把view裡的所有控制元件透明  
<span style="white-space:pre">    </span>private void bindAnimation(View view{  
       if (view instanceof ViewGroup) {  
           ViewGroup group = (ViewGroup) view;       
               for (int i = 0; i < group.getChildCount(); i++) {  
                   bindAnimation(group.getChildAt(i));  
               }             
       } else {  
           view.setAlpha(0);  
       }  
   }
[java] view plain copy
<span style="white-space:pre">    </span>new SwitchAnimationUtil(2000,5000).startAnimation(sf_imageview, AnimationType.ALPHA);  
   new SwitchAnimationUtil(1000,5000).startAnimation(rl_middle_love, AnimationType.ROTATE);  
   new SwitchAnimationUtil(2000,5000).startAnimation(iv_love_pink, AnimationType.ALPHA);  
   new SwitchAnimationUtil(2000,5000).startAnimation(ll_name, AnimationType.SCALE);

還可以看到從第三個介面進入第四個介面時會有個水紋波的效果。

這個效果用的是同一個的介面過渡效果,地址為:https://github.com/dkmeteor/ActivityAnimationLib,他這裡提供了七種效果,包括摺疊,水紋,模糊,關門等效果。我的原始碼裡集成了水紋效果,其他都刪去了,有想法的同學去看他的原始碼吧。

還可以在最後一個介面,有一個閃爍的效果,這個效果用的是開原始碼 ShimmerFrameLayout,其實就是把整個 layout 裡的控制元件把 alpha 先設成小一點,比如 0.8,然後 1 就是高亮啦,具體還是看程式碼吧~

最後,祝福大家都能告白成功640?

精彩回顧  點藍字即可  

640?wx_fmt=gif