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

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

Android自定義View實現(xiàn)抖音飄動紅心效果

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

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

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

效果展示

動畫效果

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

Android自定義View實現(xiàn)抖音飄動紅心效果

View實現(xiàn)

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

View

/** * 飄心效果 * 1.創(chuàng)建ImageView * 2.ImageView執(zhí)行組合動畫 * 3.動畫執(zhí)行完成后銷毀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); } /** * 創(chuàng)建一個心形的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; } /** * 執(zhí)行動畫 * 在展示調用該方法 */ 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)); //執(zhí)行動畫 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 正弦曲線數(shù) 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()方法就能實現(xiàn)點擊飄心效果。

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

標簽: 抖音
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美亚洲一区二区三区| 国产欧美日韩视频在线| 成人三级高清视频在线看| 国产福利资源一区| 精品亚洲a∨| 黄色aa久久| 亚洲风情在线资源| 欧美成人基地| 成人福利视频| 亚洲伦乱视频| 国产亚洲精品久久久久婷婷瑜伽| 黄色在线一区| 丝袜美腿高跟呻吟高潮一区| 一二三区精品| 欧美久久香蕉| 国产中文欧美日韩在线| 日韩欧美中文| 99riav1国产精品视频| 亚洲综合婷婷| 免费在线成人| 日韩和的一区二在线| 亚洲激情久久| 日本在线不卡视频一二三区| 国产精品tv| www成人在线视频| 丝袜美腿亚洲色图| 国产精品啊啊啊| 成人片免费看| 免费人成黄页网站在线一区二区| 日韩精品1区2区3区| 国产日韩一区二区三区在线| 高潮久久久久久久久久久久久久| 久久三级视频| 亚洲理论在线| 精品视频91| 亚洲在线一区| 国产精品巨作av| 久久久777| 亚洲精品成人一区| 精品国产一区二区三区2021| 国产精品7m凸凹视频分类| 日韩欧美中文字幕电影| 97精品国产一区二区三区 | 97精品97| 99日韩精品| 国产精品久久久久久久久久齐齐| 国产 日韩 欧美一区| 亚洲综合中文| 成人片免费看| 日本在线不卡视频| 日韩国产一区二区三区| 国产91久久精品一区二区| 视频在线观看一区二区三区| 欧美极品中文字幕| 欧美理论视频| 国产精品手机在线播放| 国内精品福利| 免费观看亚洲天堂| 香蕉精品久久| 国产乱码精品一区二区三区四区 | av综合电影网站| 亚洲永久精品唐人导航网址| 精品五月天堂| 亚州av日韩av| 亚洲网站视频| 欧美黄色一区二区| 亚洲一区不卡| 亚洲精品成人图区| 日韩国产成人精品| 91精品二区| 91一区二区三区四区| 青草久久视频| 黄色成人精品网站| 超碰成人av| 日本不卡的三区四区五区| 99热精品久久| 久久亚州av| 在线精品观看| 1000部精品久久久久久久久| 欧美国产中文高清| 日韩成人午夜精品| 亚洲少妇一区| 久久精品影视| 亚洲影院天堂中文av色| 欧美不卡在线| 欧美日韩免费观看视频| 蜜桃久久久久| 欧美一区成人| 伊人久久亚洲| 精品1区2区3区4区| 日韩精品影视| 麻豆国产在线| 国产精品久久| 日本中文字幕一区二区| 久久亚洲欧美| 国产午夜精品一区二区三区欧美 | 亚洲大全视频| 久久久精品五月天| 福利一区二区三区视频在线观看| 欧美精品国产一区| 亚洲精品女人| 国产精品毛片在线看| 99精品电影| 日本欧美不卡| 日韩一区自拍| 中文字幕高清在线播放| 久久精品一本| 国产精品日本一区二区不卡视频 | 一区在线视频观看| 成人看片网站| 天堂√8在线中文| 国产精品成人a在线观看| 国产精品亲子伦av一区二区三区 | 欧美亚洲国产日韩| 日韩专区视频网站| 免费视频一区二区| 亚洲久久视频| 婷婷久久免费视频| 日韩精品一区二区三区中文在线 | 一区福利视频| 久久亚洲影院| 亚洲精品福利| 日韩高清在线不卡| 97成人超碰| 欧美国产中文高清| 成人午夜在线| 综合日韩av| 欧美sss在线视频| 性感美女一区二区在线观看| 日韩在线中文| 婷婷国产精品| 欧美专区一区二区三区| 亚洲色诱最新| 亚洲精品自拍| 国产精品成人一区二区网站软件| 久久99国产精品视频| 成人台湾亚洲精品一区二区| 亚洲伦乱视频| 尤物在线精品| 日本不卡高清| 精品国产亚洲一区二区三区在线| 欧洲av不卡| 亚洲欧美日韩专区| 综合激情婷婷| 国产精品久久久网站| 色爱综合网欧美| 亚洲欧美日韩高清在线| 亚洲精品自拍| 精品国产乱码久久久久久1区2匹| 亚洲天堂av影院| 精品91久久久久| 日本精品国产| yellow在线观看网址| 国产综合色产| 日韩欧美在线精品| 国产成人精品福利| 欧美精品一区二区久久| 中文字幕亚洲精品乱码| 欧美日韩亚洲三区| 中文在线中文资源| 免播放器亚洲| 国产精品宾馆| 免费观看久久av| 亚洲精品系列| 精品一区91| 黑丝一区二区| 国产精品多人| 国产毛片精品久久| 日韩欧美一区二区三区在线观看 | 91国内精品| 日韩欧美一区二区三区免费观看| 日韩精品一二三四| 欧美日韩一区二区国产| 日韩中文首页| 婷婷视频一区二区三区| 精品一二三区| 蜜桃一区二区三区在线| 国产精品igao视频网网址不卡日韩 | 久久亚洲人体| 日韩午夜av在线| 精品国产三区在线| 久色成人在线| 精品三级在线| 亚洲主播在线| 国产精品国产三级国产在线观看| 99在线精品免费视频九九视| 国产毛片一区二区三区| 婷婷亚洲综合| 麻豆国产精品视频| 国产精品色网| 国产精品99在线观看| 日韩一区欧美二区| 日韩欧美不卡| 国产日韩免费| 日韩一级不卡| 日韩欧美一区免费| 国产精品亚洲综合久久| 欧美精品激情| 日韩av在线播放网址| 日本亚洲不卡|