Android 分享一个简单有趣的动画效果

本期开始于大家分享几个简单又有趣的动画

效果图:

效果还是不错的,而实现起来也并没有多大的难度,上代码喽

	public int id[] = { R.drawable.fengjing_1, R.drawable.fengjing_2,
			R.drawable.fengjing_3, R.drawable.fengjing_4,
			R.drawable.fengjing_5, R.drawable.fengjing_6 };

	public String list[] = { "一", "二", "三", "四", "五", "六" };
	private ListView mListView;
	private ImageView mImageView;

	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		initView();
	}

	private void initView() {
		mListView = (ListView) findViewById(R.id.list);
		ArrayAdapter<String> adapter = new ArrayAdapter<String>(
				MainActivity.this, android.R.layout.simple_list_item_1, list);
		mListView.setAdapter(adapter);
		mListView.setOnItemClickListener(this);
		mImageView = (ImageView) findViewById(R.id.img);
		mImageView.setOnClickListener(this);
	}

	@SuppressLint("NewApi")
	private void animation(final int position) {
		final View vis;
		final View inVis;
		if (mListView.getVisibility() == View.VISIBLE) {
			vis = mListView;
			inVis = mImageView;
		} else {
			vis = mImageView;
			inVis = mListView;
		}
		ObjectAnimator objectAnimator = ObjectAnimator.ofFloat(vis,
				"RotationY", 0f, 90f);
		objectAnimator.setDuration(500);
		objectAnimator.start();
		final ObjectAnimator objectAnimator2 = ObjectAnimator.ofFloat(
				inVis, "RotationY", -90f, 0f);
		objectAnimator2.setDuration(500);
		objectAnimator.addListener(new AnimatorListenerAdapter() {
			@Override
			public void onAnimationEnd(Animator animation) {
				super.onAnimationEnd(animation);
				objectAnimator2.start();
				vis.setVisibility(View.GONE);
				mImageView.setImageResource(id[position]);
				inVis.setVisibility(View.VISIBLE);
			}
		});

	}

	@Override
	public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
		animation(arg2);
	}

	@Override
	public void onClick(View arg0) {
		animation(0);
	}

主要是运用了属性动画,关于属性动画等我有更多的心得的时候再详细讲述。。本期纯属分享效果,十分的水啊。。。

项目源码

时间: 2024-08-15 06:05:37

Android 分享一个简单有趣的动画效果的相关文章

WPF 有趣的动画效果

WPF 有趣的动画效果 这一次我要呈上一个简单的文章,关于给你的WPF apps加入美丽的光线动画,可是我对动画这东西可能有点入迷了. 实际上.我对动画如此的入迷,以至于我最后做了之前从未打算做的东西,就是使用一些很实用的.NET代码,渐变填充生成背景动画.让我先给你看一些终于效果吧. WPF和元素定位 然而.在我们開始之前.我们须要考虑一件事情.这件事让我也有点原地转圈的感觉. 似乎当你使用WPF创建不论什么闭环形状时,你不能设置它的X和Y坐标.好吧.至少你不能在一般的WPF窗口(像VS开箱即

分享一个简单的简单的SQLHelper类

分享一个简单的简单的SQLHelper类,代码如下: 1 class SqlHelper 2 { 3 public static readonly string connstr = 4 ConfigurationManager.ConnectionStrings["dbConnStr"].ConnectionString; 5 6 public static int ExecuteNonQuery(string cmdText, 7 params SqlParameter[] para

一个简单的loading动画,version 1.0

一个简单的loading动画:如图 点我查看

一个简单的tr:hover效果

昨天,搞项目的时候,在一个小问题上卡了40分钟,现在想想,还是平时比较少去注意一些细节,经过这次,一定要去多注意细节了. 好了废话不多说,我现在说明下遇到的问题,一个表格中,要求是当鼠标滑过每一行时,该行就有高亮显示,前天写的时候感觉比较简单啊,就是在表格里面的tr加上一个hover样式就行,即是 tr:hover {...} ,这样就行了,当时也成功了.但是昨天项目又有调整,就是要给td一个背景色,我加上了背景色,当时没发现这个高亮的效果已经没了,晚上回来调试的时候老不行当时的想法是样式的优先

一个简单有趣的SQL存储过程——个人财务管理

刚开始学习存储过程的小白,网上看完语法后一般都会想实践一下,但往往又不知道该写个什么样的存储过程来练手,以下就提供一个简单有趣.用来查询每月个人财务状况的存储过程. 一.建表 首先需要建一张事实表,用来记录每月重要的支出,包括支出的类型.费用.付款方式.每月付款时间.首次分期还贷时间.最后分期还贷时间(还完的时间).用途.支出大类...不一定会都用到,也可以根据实际情况做相应的增减,以下仅提供一个例子. CREATE TABLE [dbo].[Fact_CostType] ( [CostType

分享一个简单易用的软件定时器模块——基于keil+stm32f103zet+hal库(裸机实现)

公众号上看到一个比较好的一个github项目:https://github.com/0x1abin/MultiTimer 今天看了看,简单的,就移植了- 且看文档的说明, ================================= 分享一个简单易用的软件定时器模块——MultiTimer.源码地址: https://github.com/0x1abin/MultiTimer 简介 MultiTimer 是一个软件定时器扩展模块,可无限扩展你所需的定时器任务,取代传统的标志位判断方式, 更

一起学android之设置ListView数据显示的动画效果(24)

效果图: 平时我们要实现ListView数据显示时的动画效果,可以使用LayoutAnimationController为ListView设置动画效果,并通过ListView的setLayoutAnimation方法来设置,最后startLayoutAnimation,启动动画.参看以下代码: public class MainActivity extends Activity { private ListView lv_arrayadapter; private String[] str_na

ios开发之简单实现loading动画效果

最近有朋友问我类似微信语音播放的喇叭动画和界面图片加载loading界面是怎样实现的,是不是就是一个gif图片呢!我的回答当然是否定了,当然不排除也有人用gif图片啊!下面我就来罗列三种实现loading动画效果的方法. 方法一:使用UIImageView自带的方法来实现,这也是我推荐的实现方法. NSMutableArray *array = [[NSMutableArray alloc] initWithObjects:[UIImage imageNamed:@"1.png"],[

Android实现一个简单的课程表

课程表要做复杂要考虑的东西很多,这里只说实现界面的一个简单的思路:ScrollView嵌套七个(一周七天)LinearLayout, 而每个LinearLayout又能封装成一个课程表View的ViewItem,都继承自FrameLayout.下面上代码: 首先是课程表每一天的item,现在默认一天是7节课,后面可设置成可拓展用代码实现,这里现在xml里写死: <?xml version="1.0" encoding="utf-8"?> <Line