Android 分享一個(gè)簡單有趣的動(dòng)畫效果
來源:程序員人生 發(fā)布時(shí)間:2014-11-10 08:13:46 閱讀次數(shù):2629次
本期開始于大家分享幾個(gè)簡單又有趣的動(dòng)畫
效果圖:

效果還是不錯(cuò)的,而實(shí)現(xiàn)起來也并沒有多大的難度,上代碼嘍
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[] = { "1", "2", "3", "4", "5", "6" };
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", ⑼0f, 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);
}
主要是應(yīng)用了屬性動(dòng)畫,關(guān)于屬性動(dòng)畫等我有更多的心得的時(shí)候再詳細(xì)講述。。本期純屬分享效果,10分的水啊。。。
項(xiàng)目源碼
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)