日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Android自定義View實現抖音飄動紅心效果

瀏覽:164日期:2022-06-06 18:37:30

本文實例為大家分享了Android自定義View實現抖音飄動紅心效果的具體代碼,供大家參考,具體內容如下

自定義View——抖音飄動紅心

效果展示

動畫效果

使用自定義view完成紅心飄動效果

Android自定義View實現抖音飄動紅心效果

View實現

動畫:屬性動畫(位移+縮放+透明度+旋轉)+隨機數:(屬性動畫參數+顏色選取)

View

/** * 飄心效果 * 1.創建ImageView * 2.ImageView執行組合動畫 * 3.動畫執行完成后銷毀View */public class FlyHeartView extends RelativeLayout { private int defoutWidth = 200;//默認控件寬度 private long mDuration = 3000;//默認動畫時間 //顏色集合 從中獲取顏色 private int[] color = { 0xFFFF34B3, 0xFF9ACD32, 0xFF9400D3, 0xFFEE9A00, 0xFFFFB6C1, 0xFFDA70D6, 0xFF8B008B, 0xFF4B0082, 0xFF483D8B, 0xFF1E90FF, 0xFF00BFFF, 0xFF00FF7F }; public FlyHeartView(Context context) { super(context); initFrameLayout(); } public FlyHeartView(Context context, AttributeSet attrs) { super(context, attrs); initFrameLayout(); } private void initFrameLayout() { ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(defoutWidth, ViewGroup.LayoutParams.WRAP_CONTENT); setLayoutParams(params); } /** * 創建一個心形的view視圖 */ private ImageView createHeartView() { ImageView heartIv = new ImageView(getContext()); LayoutParams params = new LayoutParams(defoutWidth / 2, defoutWidth / 2); //控件位置 params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); params.addRule(RelativeLayout.CENTER_HORIZONTAL); heartIv.setLayoutParams(params); heartIv.setImageResource(R.mipmap.ic_heart); //改變顏色 heartIv.setImageTintList(ColorStateList.valueOf(color[(int) (color.length * Math.random())])); return heartIv; } /** * 執行動畫 * 在展示調用該方法 */ public void startFly() { final ImageView heartIv = createHeartView(); addView(heartIv); AnimatorSet animatorSet = new AnimatorSet(); animatorSet.play(createTranslationX(heartIv)).with(createTranslationY(heartIv)).with(createScale(heartIv)).with(createRotation(heartIv)).with(createAlpha(heartIv)); //執行動畫 animatorSet.start(); //銷毀view animatorSet.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) {super.onAnimationEnd(animation);removeView(heartIv); } }); } /** * 橫向正弦位移動畫 * * @return */ private Animator createTranslationX(View view) { ObjectAnimator animator = ObjectAnimator.ofFloat(view, 'translationX', 0, (float) (defoutWidth * Math.random() / 4)); animator.setDuration(mDuration); //CycleInterpolator cycles 正弦曲線數 animator.setInterpolator(new CycleInterpolator((float) (3 * Math.random()))); return animator; } /** * 縱向加速位移動畫 * * @return */ private Animator createTranslationY(View view) { ObjectAnimator animator = ObjectAnimator.ofFloat(view, 'translationY', 0, -1000); animator.setDuration(mDuration); animator.setInterpolator(new AccelerateInterpolator()); return animator; } /** * 加速放大動畫 * * @return */ private Animator createScale(View view) { ObjectAnimator animatorX = ObjectAnimator.ofFloat(view, 'scaleX', 1, 1.5f); ObjectAnimator animatorY = ObjectAnimator.ofFloat(view, 'scaleY', 1, 1.5f); AnimatorSet animatorSet = new AnimatorSet(); animatorSet.setDuration(mDuration); animatorSet.setInterpolator(new AccelerateInterpolator()); animatorSet.play(animatorX).with(animatorY); return animatorSet; } /** * 透明度動畫 * * @return */ private Animator createAlpha(View view) { ObjectAnimator animator = ObjectAnimator.ofFloat(view, 'alpha', 1, 0.1f); animator.setDuration(mDuration); animator.setInterpolator(new AccelerateInterpolator()); return animator; } /** * 旋轉動畫 * * @return */ private Animator createRotation(View view) { ObjectAnimator animator = ObjectAnimator.ofFloat(view, 'rotation', 0, (float) (25f * Math.random())); animator.setDuration(mDuration); animator.setInterpolator(new CycleInterpolator((float) (6 * Math.random()))); return animator; }}

最后在MainActivity中調用FlyHeartView 的startFly()方法就能實現點擊飄心效果。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: 抖音
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美交a欧美精品喷水| 久久xxxx精品视频| 亚洲自啪免费| 在线免费观看亚洲| 日本不卡视频一二三区| 欧美日本一区| 国产一二在线播放| av亚洲在线观看| 日韩精品免费视频人成| 你懂的国产精品| 激情欧美亚洲| 日本久久二区| 日韩成人综合| 亚洲ab电影| 中文在线中文资源| 午夜国产精品视频免费体验区| 日本大胆欧美人术艺术动态| 日本欧美大码aⅴ在线播放| 国产精品久久国产愉拍| 欧美亚洲国产激情| 91欧美极品| 久久久噜噜噜| 国产调教精品| 99国产一区| 成人亚洲精品| 免费在线成人| 国产成人久久精品一区二区三区| 日韩av一区二区三区| 精品网站999| 日韩国产精品久久久| 丝袜美腿亚洲色图| 精品国产欧美日韩| 久久先锋影音| 免费日韩av片| 五月亚洲婷婷 | 久久中文字幕av一区二区不卡| 国产精品欧美在线观看| 四虎精品一区二区免费| 久久精品国产久精国产爱| 91九色综合| 深夜日韩欧美| 精品国产成人| 色网在线免费观看| 日韩精品三区四区| 亚洲一卡久久| 国产乱码精品一区二区三区亚洲人 | 国产亚洲第一伦理第一区| 岛国av在线播放| 不卡一区2区| 视频在线观看一区二区三区| 亚洲一区有码| 日韩三级一区| 精品福利久久久| 亚洲手机视频| 日韩国产高清在线| 国产精品99精品一区二区三区∴| 不卡专区在线| 蜜桃av一区二区| 欧美久久亚洲| а√在线中文在线新版| 蜜臀国产一区二区三区在线播放| 国产精品一国产精品| 成人日韩在线观看| 日韩精品导航| 日韩成人亚洲| 久久精品官网| 成人看片网站| 天堂av在线| 久久久久久久久久久妇女| 国产精选在线| 99久久久久久中文字幕一区| 成人羞羞在线观看网站| 播放一区二区| 国产精品97| 亚洲一区二区三区四区五区午夜| 黄色亚洲在线| 中文字幕视频精品一区二区三区 | 在线日韩成人| 亚洲男人在线| 免费在线观看不卡| 日本欧美在线| 久久精品国产福利| 136国产福利精品导航网址| 亚洲制服少妇| 亚洲婷婷丁香| 国产精品www.| 99久久亚洲精品| 亚洲一区二区av| 国产精品成人一区二区网站软件| 美女久久久精品| 香蕉久久99| 中文字幕一区二区三区四区久久| 日韩av一区二区在线影视| 黄色在线观看www| 99视频精品全国免费| 亚洲另类av| 在线亚洲人成| 日韩福利视频导航| 欧美亚洲激情| 国产精品v日韩精品v欧美精品网站 | 婷婷亚洲精品| 国产日韩欧美| 伊人久久成人| 精品视频一区二区三区在线观看| 久久久久99| 国产精品久久久久久久久久妞妞| 欧洲亚洲一区二区三区| 国产剧情在线观看一区| 伊人精品在线| 麻豆mv在线观看| 国产日韩欧美三区| 免费观看在线综合色| 久久国产毛片| 欧美韩日一区| 日韩视频久久| 亚洲免费观看高清完整版在线观| 欧美香蕉视频| 日韩毛片视频| 欧美不卡高清| 亚洲一区黄色| 中文字幕视频精品一区二区三区| 蜜臀精品一区二区三区在线观看| 在线国产一区| 美女国产精品| 亚洲一区二区三区中文字幕在线观看 | 久久网站免费观看| 久久一级电影| 亚洲专区一区| 国产探花一区在线观看| 欧美亚洲免费| 免费日韩成人| av一区在线| 免费在线观看视频一区| 国产精品香蕉| 日韩在线中文| 午夜久久福利| 91精品丝袜国产高跟在线| 国产欧美日韩影院| 黄色aa久久| 久久99伊人| 国产调教精品| 99精品视频在线| 香蕉精品视频在线观看| 青青国产91久久久久久| 久久久精品国产**网站| 影视先锋久久| 久久狠狠久久| 一区二区视频欧美| 久久字幕精品一区| 蜜臀av一区二区三区| 国产精品日韩精品在线播放| 91精品蜜臀一区二区三区在线| 亚洲人成精品久久久| 天堂日韩电影| 成人午夜网址| 欧美久久一区二区三区| 久久影视一区| 精品日韩在线| 亚州精品视频| 色综合www| 成人亚洲精品| 欧美日一区二区三区在线观看国产免| 久久久久久免费视频| 麻豆久久一区| 麻豆精品视频在线观看| 日韩在线视频一区二区三区| 亚洲二区三区不卡| 日韩精品永久网址| 国产精品啊啊啊| 国产精品一区二区三区四区在线观看 | 综合色一区二区| 久久香蕉国产| 精品网站aaa| 麻豆久久一区| 国产精品videossex久久发布 | 日韩福利视频网| 亚洲精品一区二区在线播放∴| 国产v日韩v欧美v| 在线视频观看日韩| 蜜臀av在线播放一区二区三区| 综合激情视频| 国产午夜一区| 日韩.com| 在线国产一区二区| 日韩精品免费视频人成| 精品精品99| 中文在线а√在线8| 欧美成人精品三级网站| 亚洲91在线| 欧美国产专区| 国产一区二区久久久久| 久久av超碰| 激情婷婷欧美| 久久福利在线| 中文字幕一区二区三区四区久久| 国产欧美亚洲一区| 日韩av不卡在线观看| 亚洲国产一区二区在线观看| 日本成人在线不卡视频| 日韩精品一级|