首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为2个imageViews的位置切换设置动画

,可以通过使用Android的动画框架来实现。以下是一个完善且全面的答案:

动画是一种在用户界面中创建动态效果的技术。在Android开发中,可以使用属性动画来实现视图的动画效果。属性动画可以对任何对象的属性进行动画操作,包括视图的位置、大小、透明度等。

在这个场景中,我们可以使用属性动画来实现两个imageViews的位置切换动画。具体步骤如下:

  1. 首先,确保你已经在项目中导入了Android动画库。可以在build.gradle文件中添加以下依赖项:
代码语言:groovy
复制
implementation 'androidx.appcompat:appcompat:1.3.1'
  1. 在XML布局文件中,定义两个imageViews,并设置它们的初始位置。
代码语言:xml
复制
<ImageView
    android:id="@+id/imageView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/image1"
    android:layout_marginTop="100dp"
    android:layout_marginLeft="100dp"/>

<ImageView
    android:id="@+id/imageView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/image2"
    android:layout_marginTop="200dp"
    android:layout_marginLeft="200dp"/>
  1. 在Java代码中,使用属性动画来实现位置切换动画。
代码语言:java
复制
import android.animation.ObjectAnimator;
import android.view.View;

// 获取imageView1和imageView2的引用
ImageView imageView1 = findViewById(R.id.imageView1);
ImageView imageView2 = findViewById(R.id.imageView2);

// 创建一个属性动画对象,设置动画的目标对象为imageView1,动画属性为translationX(X轴平移)
ObjectAnimator animator1 = ObjectAnimator.ofFloat(imageView1, "translationX", 0f, 200f);
animator1.setDuration(1000); // 设置动画持续时间为1秒

// 创建一个属性动画对象,设置动画的目标对象为imageView2,动画属性为translationY(Y轴平移)
ObjectAnimator animator2 = ObjectAnimator.ofFloat(imageView2, "translationY", 0f, 200f);
animator2.setDuration(1000); // 设置动画持续时间为1秒

// 同时播放两个动画
animator1.start();
animator2.start();

以上代码将会使imageView1在X轴方向上向右平移200个像素,imageView2在Y轴方向上向下平移200个像素,从而实现位置切换的动画效果。

推荐的腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

安卓APP设置统一风格界面切换动画那么

其实这也是我自己遇到问题,为了避免下次遇到再满世界去找,我还是记录下来,网上都是不全。我也是满心无奈、 我们首先要意识到,界面切换有几种? 当界面被打开直至充满整个屏幕时候动画。...界面已经充满屏幕,但是被刚才新打开界面遮住动画。 当界面关闭时候动画 当刚才被遮住界面重新回到屏幕动画。...--当界面被遮住动画 从界面往左边移动,直至消失在屏幕左边--> <translate android:fromXDelta="0%p" android:toXDelta="-100%p"/...,怎么都设置不上去,后来发现,还需要这样: <!...application里面设置:android:theme="@style/AppTheme" 这样就完全统一了切换动画

92020

android控件实现多张图片渐变切换

本来项目是用viewpager实现轮播滚动,但是客户觉得轮播效果太大众化了,于是就要我们改成渐变切换效果。...听到这需求,我最先想到是给viewpager设置切换动画,但是无论怎么设置动画,都要手动切换时候才有效果。...; } /** * 开启动画 */ private void start() { final int size = imageViews.size(); handler.post(new Runnable...{ void setonClick(int position); } /** * 设置动画播放和handler延迟时间 * @param time */ public void setTime(long...,然后调用setTime设置动画切换时间,setListener设置图片点击事件,setImagevies设置图片就可以实现效果.考虑到内存泄漏问题,只要在ondestry方法里面调用stop方法即可

2.3K61
  • 一个保存数据方法(可以切换存放位置,可以设置密钥)

    我现在遇到了两个问题,第一个是如何在这几种方式里面快速、方便切换,第二个是如何实现一个既可以区分用户,又可以区分页面,又节省服务器资源,又比较安全保存数据方式。       ...Ps:这个难题解决之后,QuickPager分页控件就可以一份二了,变成QuickPager_UI、QuickPager_SQL两个部分,再加上我数据访问函数库和现实数据控件,就是一套完整分页解决方案了...    枚举enum SaveViewStateLocation#region 枚举enum SaveViewStateLocation     /**////      /// 保存数据位置...private string _key = "";         #endregion         public MyViewState()         {             //默认设置不保存...);         }         #endregion         函数#region 函数         /**////          /// 把数据保存到指定位置里面

    1.1K100

    Android ViewPager无限循环滑动并可自动滚动完整实例

    +id/top_vp" </android.support.v4.view.ViewPager </LinearLayout 很简单 仅仅是一个ViewPager 接下来简单设置一下...实现无限循环滑动: 这里我事先循环滑动方式很简单 就是把 adaptercount 设置一个很大值 这样 让它滑不到头 然后切换图片 就可以实现 虽然方法比较LOW 但是效果还是可以...R.drawable.point_pink); } else { txtPoints.get(i).setBackgroundResource(R.drawable.point_grey); } } } } } 给ViewPager添加切换动画...控制ViewPager 自动切换速度 ViewPager自身切换速度是写死,我们无法修改,但是我们可以通过源码看到,ViewPager切换速度是通过 Scroller类 控制,而Scroller...类中是可以设置过渡时间,因此 我们可以通过自己创建一个Scroller类 继承 Scroller 然后 通过反射 把ViewPager中mScroller属性 设置成我们自己可以设置时间Scroller

    98510

    Android实现渐变启动页和带有指示器引导页

    实现步骤: 1.首先我们做个有渐变动画启动页面SplashActivity 在onCreate里设置核心方法setAlphaAnimation() public void setAlphaAnimation...(){ //生成AlphaAnimation对象 AlphaAnimation animation= new AlphaAnimation(this); //设置动画持续时间...animation.setDuration(3000); //给要渐变控件设置动画,比如说imageview,textview,linearLayout之类 ll.setAnimation...(imageView); } } 初始化底部圆点指示器,这里值得一提是我们给各圆点设置相应点击事件,当点击某个位置圆点时,viewpager自动切换到相应位置图片,不过实际应用中这里实用性不是很大...viewpager滑动事件 vp.addOnPageChangeListener(this); 生成三个方法,我们主要在onPageSelected()方法中做操作,当某个位置圆点被选中时,显示选中后图片

    96451

    Android开发之引导页简单实现

    一、实现思路 当欢迎页面加载完成时候(一般动画),即欢迎页面动画加载完成时候,从本地存储中取出记录是否是第一次进入,然后进入引导页或者主页,如果是第一次就进入引导页,否则进入主页。...引导页布局使用:viewPager实现,可根据需要添加“开始体验”,“跳过”按钮等,布局中下位置可使用imgae设置其drawableshapeoval,作为引导页面的指示器点,根据页面的多少实现动态添加.../> 四、欢迎页面代码: //当动画播放结束时候回调...(R.drawable.point_gray); //设置大小 LinearLayout.LayoutParams params = new LinearLayout.LayoutParams...); } /** * @param container viewPager容器 * @param position 创建视图对应位置

    2.3K21

    【Android 应用开发】Android中使用ViewPager制作广告栏效果 - 解决ViewPager占满全屏页面适配问题

    页面的个数; 返回值 : ViewPager页面个数; Object instantiateItem(View container, int position) :  作用 :在给定位置创建页面, PageAdapter...负责向指定position位置添加View页面; 参数 : container容器就是ViewPager, position指的是ViewPager索引; 返回值 : 返回代表新的一页对象; boolean...; 参数 : view 要关联页面, object instantiateItem()方法返回对象; 返回值 : 是否要关联显示页面与 instantiateItem()返回值; PageAdapter...自动翻页导航策略 线程中处理自动翻页 : 启动一个线程, 获取当前页面显示索引, 计算出下一个显示位置, 显示下一个页面; ....} catch (InterruptedException e) { } } /* * 每隔固定时间切换广告栏图片

    1.1K20

    自定义广告图片轮播View——CarouselView

    因为一个广告机需求,需要做一个广告轮播效果,不需要什么特别的动画,正常轮播就可以了。笔者看了网上很多文章,要么不好用,要么就是效果太多,太复杂,用不上。...@Override public void onPageSelected(int position) { //当前位置可能很大,为了防止下标越界,对要显示图片总数进行取余...(newPosition).getImgDescs()); //设置小圆点高亮或暗色 ll_point.getChildAt(lastPosition).setEnabled...@Override public void onPageSelected(int position) { //当前位置可能很大,为了防止下标越界,对要显示图片总数进行取余...(newPosition).getImgDescs()); //设置小圆点高亮或暗色 ll_point.getChildAt(lastPosition).setEnabled

    1.9K20

    android 自定义Viewpager实现无限循环

    .showImageForEmptyUri(R.drawable.icon_empty) // 设置图片Uri空或是错误时候显示图片                 ....showImageOnFail(R.drawable.icon_error) // 设置图片加载或解码过程中发生错误显示图片                 .cacheInMemory(true...) // 设置下载图片是否缓存在内存中                 .cacheOnDisc(true) // 设置下载图片是否缓存在SD卡中 // .displayer(new RoundedBitmapDisplayer...,即没多少秒切换到下一张视图.默认5000ms      *       * @param time      *            毫秒单位      */ public void ...,循环时需要注意返回position包含之前在views最前方与最后方加入视图,即当前页面试图在views集合位置      *       * @return      */ public

    3.3K70

    巧妙运用补间动画,自定义广告轮播CarouselView 2.0

    简单bean文件,支持传入图片和图片描述(可选),然后调用init方法初始化即可,第二个参数是动画动画也是选传项,不设置动画则显示传统轮播控件。   ...最后也是最关键fragmeLayout和veiwPager设置属性setClipChildren(false),该属性能够让Android不去自动裁剪超出布局部分,也就是我们ViewPager左右两遍...Item正常情况下是会被裁剪掉,不显示,而设置该属性false后能保证他们存活。...到此我们已经完成了Scale动画绘制,然后是Aplha动画,从[-1,1]Item是一个从透明到不透明再到透明过程,笔者采用了代码中算法,其实可以同设置Scale动画一样,逐步设置。...0.85f和0.5f (-infinity,-1)(-,infinity)设置全透明,因为一个页面值显示Item,所以为了方便,直接可以设置全透明 (-1,1)分别设置位移动画、缩放动画以及渐变动画

    1.1K20

    Android实现自动轮播图效果

    位置. int currentItem = viewpager_vp.getCurrentItem(); //通过得到这个item,给text和点进行选中设置. changeTextAndDot(currentItem...@Override public int getCount() { //把返回条目设置无限大.333 //注意:一般和获取ViewPager当前选中是第几页有关都要改为position(当前页数...Object instantiateItem(ViewGroup container, int position) { //根据条目所在位置(利用Position),从ImageViews集合里获取相对应...,动态创建点222 */ public void dot() { //创建一个View对象; View view = new View(this); //这个View对象设置背景setBackgroundResource...,设置对应点和文本.222 * * @param position int ViewPageritem,也是图片位置 */ public void changeTextAndDot(int position

    1.3K30

    Android实现轮播图片展示效果

    本文实例大家分享了Android轮播图片展示,供大家参考,具体内容如下 实现逻辑 1.创建XML布局文件,使用ViewPager完成轮播图片 2.初始化ViewPager控件,然后为控件设置适配器...,可以通过初始化控件,在ViewPager监听器中onPageSelected方法中tv_desc.setText(descs[position]);这样文字就可以跟随者图片进行切换 6.文字下方小圆点切换...(10, 10);方法引入小圆点(具体代码可以参考下方initDot方法) 7.要想让小圆点随着页面的切换切换,可以定义下方changeDots方法,让此方法在监听器中onPageSelected...方法中进行调用 8.图片无限轮播实现:可以使适配器中getCount返回值设为一个很大很大值,同时在instantiateItem方法中设置position position = position...; i++) { View view = layout_dot.getChildAt(i); view.setSelected(false); } //获取当前被选中条目 设置选中状态 layout_dot.getChildAt

    1.9K10

    Android Viewpager实现轮播广告图

    本文实例大家分享了Android Viewpager轮播广告图具体代码,供大家参考,具体内容如下 <RelativeLayout xmlns:android="http://schemas.android.com...String [] imagetion={ "有型有范","周末放假","家电买一送一","预约迎新机","京东火锅节" }; int preposition=0;//设置高亮位置 Handler...)-Item布局-绑定数据 viewPager.setAdapter(new Mypager()); viewPager.setOnPageChangeListener(new myon()); //设置中间位置...(); //设置对应页面的文本信息 text_main_tatle.setText(imagetion[realpostion]); //坝上一个高亮设置成灰色 ll_main_point_group.getChildAt...类型最大值 } //相当于getView方法 //container Viewpager自身 //position 当前实例化页面的位置(下标) @Override public Object instantiateItem

    95930

    Android开发实现高仿优酷客户端图片左右滑动切换功能实例【附源码下载】

    本文实例讲述了Android开发实现高仿优酷客户端图片左右滑动切换功能。...图片自动切换: 可使用Timer或者ScheduledExecutorService,这个有多重方式可以实现....同时要切换底部dots(园点) 3.Handler+Message机制更新UI,这个相信大家都很熟练,不再描述 4....实现一些细节:注意本例中优化:图片自动切换启动了其他线程,要在Activity在可见到不可见状态,也就是在onStop()方法中将线程停止,在onStart()方法中开启线程。...ViewPager页面的适配器 // 设置一个监听器,当ViewPager中页面改变时调用 viewPager.setOnPageChangeListener(new MyPageChangeListener

    2.7K20
    领券