private void showCloseAnim() {
int size = viewList.size();
if (size % 2 == 0) {
//是偶数
for (int i = 0; i < size; i++) {
if (i < size / 2) {
//坐标轴下边
AnimatorSet set = new AnimatorSet();
double x = -Math.cos(Math.PI * (size - 1 - 2 * i) / (4 * size - 4)) * 600;
double y = Math.sin(Math.PI * (size - 1 - 2 * i) / (4 * size - 4)) * 600;
set.playTogether(ObjectAnimator.ofFloat(viewList.get(i), "translationX", (float) x, 0),
ObjectAnimator.ofFloat(viewList.get(i), "translationY", (float) y, 0));
set.setInterpolator(new BounceInterpolator());
set.setDuration(500).setStartDelay(100 * i);
set.start(); } else {
//坐标轴上边
AnimatorSet set = new AnimatorSet();
double x = -Math.cos(Math.PI * (2 * i - size + 1) / (4 * size - 4)) * 600;
double y = -Math.sin(Math.PI * (2 * i - size + 1) / (4 * size - 4)) * 600;
set.playTogether(ObjectAnimator.ofFloat(viewList.get(i), "translationX", (float) x, 0),
ObjectAnimator.ofFloat(viewList.get(i), "translationY", (float) y, 0));
set.setDuration(500).setStartDelay(100 * i);
set.start();
}
} } else {
//是奇数
}
} private void showOpenAnim() {
int size = viewList.size();
if (size % 2 == 0) {
//是偶数
for (int i = 0; i < size; i++) {
if (i < size / 2) {
//坐标轴下边
AnimatorSet set = new AnimatorSet();
double x = -Math.cos(Math.PI * (size - 1 - 2 * i) / (4 * size - 4)) * 600;
double y = Math.sin(Math.PI * (size - 1 - 2 * i) / (4 * size - 4)) * 600;
set.playTogether(ObjectAnimator.ofFloat(viewList.get(i), "translationX", 0, (float) x),
ObjectAnimator.ofFloat(viewList.get(i), "translationY", 0, (float) y),
ObjectAnimator.ofFloat(viewList.get(i), "alpha", 0, 1).setDuration(2000));
set.setDuration(500).setStartDelay(100 * i);
set.start(); } else {
//坐标轴上边
AnimatorSet set = new AnimatorSet();
double x = -Math.cos(Math.PI * (2 * i - size + 1) / (4 * size - 4)) * 600;
double y = -Math.sin(Math.PI * (2 * i - size + 1) / (4 * size - 4)) * 600;
set.playTogether(ObjectAnimator.ofFloat(viewList.get(i), "translationX", 0, (float) x),
ObjectAnimator.ofFloat(viewList.get(i), "translationY", 0, (float) y),
ObjectAnimator.ofFloat(viewList.get(i), "alpha", 0, 1).setDuration(2000));
set.setDuration(500).setStartDelay(100 * i);
set.start();
}
} } else {
//是奇数
}
}

最新文章

  1. 面向组合子设计Coder
  2. linux菜鸟日记(2)
  3. [转载] php用csv文件导出大量数据
  4. ubantu14下vim的配置...
  5. CP强制覆盖
  6. Hadoop学习笔记(1)
  7. 8.Smack类库
  8. SQL Server性能优化(1)使用SET函数
  9. Random.Next 方法 (Int32, Int32)
  10. Backbone+React使用
  11. java基础知识点---size(),length(),length的区别
  12. tensorflow softsign函数应用
  13. Jmeter性能测试,新手上路篇
  14. [LeetCode] Prime Number of Set Bits in Binary Representation 二进制表示中的非零位个数为质数
  15. 初学python之路-day10
  16. google搜索引擎正确打开姿势
  17. 【Math for ML】解析几何(Analytic Geometry)
  18. sql执行计划(书中个人总结)
  19. mininet *** Error: RTNETLINK answers: No such file or directory 问题及解决方法
  20. 【嵌入式】FS2410非操作系统外围资源测试

热门文章

  1. zoj 2313 Chinese Girls&#39; Amusement 解题报告
  2. struts2 学习日记1
  3. hdu 1358 Period(kmp求一个串的重复子串)
  4. 测试jdbc连接下,mysql和mycat的吞吐性能
  5. java实现EXCEL数据导入到数据库中的格式问题的解决
  6. 杂文笔记《Redis在万亿级日访问量下的中断优化》
  7. TFS独占签出代码
  8. 爬虫库之BeautifulSoup学习(三)
  9. JVM 内存区域
  10. C/C++学习笔记1