返回顶部
首页 > 资讯 > 精选 >Android实现dialog的3D翻转示例
  • 830
分享到

Android实现dialog的3D翻转示例

android3d翻转roi 2023-05-30 22:05:09 830人浏览 独家记忆
摘要

本文实现了Android中dialog的3D翻转效果。这里通过一个简单的应用场景记录下。效果图起初自己的思路是Activity进行界面跳转实现旋转效果,网上看了很多,写下来发现效果不对。之后又看到Google上面的Card Flid Ani

本文实现了Android中dialog的3D翻转效果。这里通过一个简单的应用场景记录下。

效果图

Android实现dialog的3D翻转示例

起初自己的思路是Activity进行界面跳转实现旋转效果,网上看了很多,写下来发现效果不对。之后又看到Google上面的Card Flid Animation效果是这样的。

Android实现dialog的3D翻转示例

看着确实不错,然而拿下来demo放慢翻转速度后发现,不是我想要的。但是跟我看到的一个app里面的效果一样

然后想改成dialog试试效果,发现更是不行了。

Card Flid Animation效果如下:

这个是通过Activity来切换Fragment实现的,可以看到区别是翻转时候貌似会变大,其实没用,只是翻转后的视觉问题。

Android实现dialog的3D翻转示例

听说openGl比较麻烦,并且没有用过。然后就搜了下Rotate3DAnimaitons。

搜到了这篇文章https://www.jb51.net/article/77195.htm

所以这篇文章里的实现方法不是我的原创,是参考人家的。在这里感谢这位大神。

不过他这个是activity里的,我就想要一个dialog效果,因为电脑上TIM的打开红包这个3D效果看着不错,其实大同小异,就拿过来改成Dialog。

对于Rotate3DAnimaitons这篇文章已经很详细了,有需要的可以参考下。

这里也贴下Rotate3dAnimation 的代码

简单加了两行注释

public class Rotate3dAnimation extends Animation {  private final float mFromDegrees;  private final float mToDegrees;  private final float mCenterX;  private final float mCenterY;  private final float mDepthZ;  private final boolean mReverse;  private Camera mCamera;    public Rotate3dAnimation(float fromDegrees, float toDegrees,      float centerX, float centerY, float depthZ, boolean reverse) {    mFromDegrees = fromDegrees;    mToDegrees = toDegrees;    mCenterX = centerX;    mCenterY = centerY;    mDepthZ = depthZ;//Z轴移动的距离,这个来影响视觉效果,可以解决flip animation那个给人看似放大的效果    mReverse = reverse;  }  @Override  public void initialize(int width, int height, int parentWidth, int parentHeight) {    super.initialize(width, height, parentWidth, parentHeight);    mCamera = new Camera();  }  @Override  protected void applyTransfORMation(float interpolatedTime, Transformation t) {    final float fromDegrees = mFromDegrees;    float degrees = fromDegrees + ((mToDegrees - fromDegrees) * interpolatedTime);    final float centerX = mCenterX;    final float centerY = mCenterY;    final Camera camera = mCamera;    final Matrix matrix = t.getMatrix();    Log.i("interpolatedTime", interpolatedTime+"");    camera.save();    if (mReverse) {      camera.translate(0.0f, 0.0f, mDepthZ * interpolatedTime);    } else {      camera.translate(0.0f, 0.0f, mDepthZ * (1.0f - interpolatedTime));    }    camera.rotateY(degrees);    camera.getMatrix(matrix);    camera.restore();    matrix.preTranslate(-centerX, -centerY);    matrix.postTranslate(centerX, centerY);  }}

--结束END--

本文标题: Android实现dialog的3D翻转示例

本文链接: https://lsjlt.com/news/221584.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Android实现dialog的3D翻转示例
    本文实现了Android中dialog的3D翻转效果。这里通过一个简单的应用场景记录下。效果图起初自己的思路是Activity进行界面跳转实现旋转效果,网上看了很多,写下来发现效果不对。之后又看到Google上面的Card Flid Ani...
    99+
    2023-05-30
    android 3d翻转 roi
  • css3如何实现3d翻转效果
    今天小编给大家分享的是css3如何实现3d翻转效果,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。什么是csscss是一种用来表现HTML或XML等文件样式的计算机语言,主要是用来设计...
    99+
    2023-06-14
  • Android利用Camera实现中轴3D卡牌翻转效果
    在Android系统API中,有两个Camera类: android.graphics.Camera android.hardware.Camera 第二个应用...
    99+
    2022-06-06
    3d Android
  • Android动画之3D翻转效果实现函数分析
    Android中的翻转动画效果的实现,首先看一下运行效果如上图所示. Android中并没有提供直接做3D翻转的动画,所以关于3D翻转的动画效果需要我们自己实现,那么我们首先来...
    99+
    2022-06-06
    函数 3d Android
  • 基于Android实现3D翻页效果
    最近做了一个简单的3D效果翻页特效,先说说我的思路吧,首先我这个翻页效果并不是两个Activity之间的跳转,而是在同一个activity类切换不同的view而已。我现在的做法...
    99+
    2022-06-06
    3d Android
  • Android编程实现3D旋转效果实例
    本文实例讲述了Android编程实现3D旋转效果的方法。分享给大家供大家参考,具体如下: 下面的示例是在Android中实现图片3D旋转的效果。 实现3D效果一般使用OpenG...
    99+
    2022-06-06
    3d旋转 3d Android
  • Android实现从底部弹出的Dialog示例(一)
    一.概述 先给大家看一下效果图: 点击中间的显示弹框按钮,从底部弹出来一个对话框,用户可以点击拍照或者从相册选择进行相应的操作,下面看看怎么实现。 二.代码实现 主页面布局文...
    99+
    2022-06-06
    dialog Android
  • css3怎么实现3D色子翻转特效
    本篇内容主要讲解“css3怎么实现3D色子翻转特效”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css3怎么实现3D色子翻转特效”吧!css3使我们能够跳出2d...
    99+
    2024-04-02
  • CSS如何实现卡片3D翻转效果
    这篇文章将为大家详细讲解有关CSS如何实现卡片3D翻转效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。效果:代码:html:<div class="main">...
    99+
    2023-06-08
  • android基于dialog实现等待加载框示例
    最近想找一些新颖的等待框,但一直找不到理想的效果,没有办法,只好自己动手丰衣足食了。 先给大家看个效果图! 首先就是新建一个dialog的XML文件了 <?...
    99+
    2022-06-06
    示例 dialog Android
  • css3中怎么实现图形3d翻转效果
    css3中怎么实现图形3d翻转效果,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。<!DOCTYPE html&...
    99+
    2024-04-02
  • Android如何实现翻转动画效果(卡片翻转)
    目录前言需求一、先介绍三个插值器二、实现步骤1.效果图2.布局3.逻辑判断(是否隐藏)4.翻转动画5.bug出现6.bug解决三、源码四、总结前言 最近好友问计蒙翻转动画,恰好在大...
    99+
    2024-04-02
  • css3怎么实现麻将筛子3D翻转特效
    这篇文章主要介绍“css3怎么实现麻将筛子3D翻转特效”,在日常操作中,相信很多人在css3怎么实现麻将筛子3D翻转特效问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”css3...
    99+
    2024-04-02
  • 使用CSS3怎么实现一个3D翻转效果
    本篇文章给大家分享的是有关使用CSS3怎么实现一个3D翻转效果,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。第一步非常简单,我们简单画1个演示方块,为其 添加transitio...
    99+
    2023-06-08
  • css3代码如何实现图形3d翻转效果
    这篇“css3代码如何实现图形3d翻转效果”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“css3代码如何实现图形3d翻转效果...
    99+
    2023-07-04
  • CSS实现3d特效的演示示例
    小编给大家分享一下CSS实现3d特效的演示示例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!图像转换与THREE.js 结合使用...
    99+
    2024-04-02
  • android实现扑克卡片翻转
    今天看见一个Android 扑克卡片翻转效果的帖子,于是手痒想学一学,由于接触过的Animation动画等比较少,所以感觉很新奇。 首先,说一下布局,是FrameLayout,...
    99+
    2022-06-07
    Android
  • Android实现卡片翻转动画
    最近项目上用到了卡片的翻转效果,大致研究了下,也参考了网上的一些Demo,简单实现如下: activity_main.xml <?xml version=...
    99+
    2022-06-06
    动画 Android
  • Android 屏幕实现上下翻转
    Android 屏幕实现上下翻转通常我们的应用只会设计成横屏或者竖屏,锁定横屏或竖屏的方法是在manifest.xml文件中设定属性android:screenOrientation为"landscape"或"portrait": <...
    99+
    2023-05-31
    android 翻转 roi
  • 怎么用css3实现麻将筛子3D翻转特效
    这篇文章主要介绍“怎么用css3实现麻将筛子3D翻转特效”,在日常操作中,相信很多人在怎么用css3实现麻将筛子3D翻转特效问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作