当前位置: 编程技术>移动开发
本页文章导读:
▪Tween 补间卡通片(硬编码方式) Tween 补间动画(硬编码方式)
/**
* Tween 补间动画
*
* @author lilin
* @date 2011-9-5 下午04:03:40
* @ClassName: Main
* @Description: 通过硬编码的方式
*/
public class Main extends Activity implements OnClickListener {
.........
▪ Activity其间经典切换动画效果 Activity之间经典切换动画效果
没有什么好讲的,先看效果图吧。
主要代码:
package com.iteye.androidtoast;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
im.........
▪ UIView中得控件,摘引数会莫名其妙的加一 UIView中得控件,引用数会莫名其妙的加一
1,问题描述
登陆界面模块,通过代码向UIView中添加了一个button,alloc后应用计数为1,addSubView后引用计数变为2,在事件处理函数中(另外一个button的act.........
[1]Tween 补间卡通片(硬编码方式)
来源: 互联网 发布时间: 2014-02-18
Tween 补间动画(硬编码方式)
/**
* Tween 补间动画
*
* @author lilin
* @date 2011-9-5 下午04:03:40
* @ClassName: Main
* @Description: 通过硬编码的方式
*/
public class Main extends Activity implements OnClickListener {
private Button b1, b2, b3, b4;
private ImageView imageView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
imageView = (ImageView) findViewById(R.id.ImageView01);
b1 = (Button) findViewById(R.id.Button01);
b2 = (Button) findViewById(R.id.Button02);
b3 = (Button) findViewById(R.id.Button03);
b4 = (Button) findViewById(R.id.Button04);
b1.setOnClickListener(this);
b2.setOnClickListener(this);
b3.setOnClickListener(this);
b4.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.Button01:// 创建Sacle(尺寸)变化动画
Animation scaleAnimation = new ScaleAnimation(//
0f, // 起始X坐标上的伸缩尺寸
1f,// 结束X坐标上的伸缩尺寸
0f, // 起始Y坐标上的伸缩尺寸
1f,// 结束Y坐标上的伸缩尺寸
Animation.RELATIVE_TO_SELF,// X坐标伸缩模式
0.5f,// X坐标伸缩值
Animation.RELATIVE_TO_SELF,// Y坐标伸缩模式
0.5f// Y坐标伸缩值
);
scaleAnimation.setDuration(3000);// 创建Sacle(尺寸)变化动画
imageView.startAnimation(scaleAnimation);// 开始动画
break;
case R.id.Button02:// 创建Alpha(渐变)动画
Animation alphaAnimation = new AlphaAnimation(//
0.1f,// 动画开始透明度
1.0f// 动画结束透明度(取值范围0.0-1.0)
);
alphaAnimation.setDuration(3000);
imageView.startAnimation(alphaAnimation);
break;
case R.id.Button03:// 创建translate(位置变化)动画
Animation translateAnimation = new TranslateAnimation(//
10,// 起始X坐标
100, // 结束X坐标
10,// 起始Y坐标
100// 结束Y坐标
);
translateAnimation.setDuration(3000);
imageView.startAnimation(translateAnimation);
break;
case R.id.Button04:// 创建rotate(旋转)动画
Animation rotateAnimation = new RotateAnimation(//
0f, // 旋转开始角度
+360f,// 旋转结束角度
Animation.RELATIVE_TO_SELF, // X坐标伸缩模式
0.5f,// X坐标伸缩值
Animation.RELATIVE_TO_SELF, // Y坐标伸缩模式
0.5f// Y坐标伸缩值
);
rotateAnimation.setDuration(3000);
imageView.startAnimation(rotateAnimation);
break;
default:
break;
}
}
}
[2] Activity其间经典切换动画效果
来源: 互联网 发布时间: 2014-02-18
Activity之间经典切换动画效果
没有什么好讲的,先看效果图吧。
主要代码:
package com.iteye.androidtoast;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Spinner mAnimSp = (Spinner) findViewById(R.id.animation_sp);
Button mButton=(Button) findViewById(R.id.other_button);
// 通过资源文件获取Spinner填充内容
String[] ls = getResources().getStringArray(R.array.anim_type);
List<String> list = new ArrayList<String>();
// 把数组内容填充 到集合
for (int i = 0; i < ls.length; i++) {
list.add(ls[i]);
}
ArrayAdapter<String> animType = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, list);
animType.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mAnimSp.setAdapter(animType);
mAnimSp.setSelection(0);
mButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setClass(MainActivity.this, OtherActivity.class);
startActivity(intent);
switch (mAnimSp.getSelectedItemPosition()) {
case 0:
/*注意:此方法只能在startActivity和finish方法之后调用。
第一个参数为第一个Activity离开时的动画,第二参数为所进入的Activity的动画效果*/
overridePendingTransition(R.anim.fade, R.anim.hold);
break;
case 1:
overridePendingTransition(R.anim.my_scale_action,
R.anim.my_alpha_action);
break;
case 2:
overridePendingTransition(R.anim.scale_rotate,
R.anim.my_alpha_action);
break;
case 3:
overridePendingTransition(R.anim.scale_translate_rotate,
R.anim.my_alpha_action);
break;
case 4:
overridePendingTransition(R.anim.scale_translate,
R.anim.my_alpha_action);
break;
case 5:
overridePendingTransition(R.anim.hyperspace_in,
R.anim.hyperspace_out);
break;
case 6:
overridePendingTransition(R.anim.push_left_in,
R.anim.push_left_out);
break;
case 7:
overridePendingTransition(R.anim.push_up_in,
R.anim.push_up_out);
break;
case 8:
overridePendingTransition(R.anim.slide_left,
R.anim.slide_right);
break;
case 9:
overridePendingTransition(R.anim.wave_scale,
R.anim.my_alpha_action);
break;
case 10:
overridePendingTransition(R.anim.zoom_enter,
R.anim.zoom_exit);
break;
case 11:
overridePendingTransition(R.anim.slide_up_in,
R.anim.slide_down_out);
break;
}
}
});
}
}
资源文件太多不贴了自己下载看吧。希望对你能有点用。
1 楼
逍遥天下
2012-04-09
这个在真机上测试 ··不行哦············没动画的效果出现·······求原因·········
[3] UIView中得控件,摘引数会莫名其妙的加一
来源: 互联网 发布时间: 2014-02-18
UIView中得控件,引用数会莫名其妙的加一
1,问题描述
登陆界面模块,通过代码向UIView中添加了一个button,alloc后应用计数为1,addSubView后引用计数变为2,在事件处理函数中(另外一个button的action函数)打印这个button的引用计数时,retainCount莫名其妙的就变为3了,这个button我没有做别的任何操作,这时为什么呢?
2,问题待解决
最新技术文章: