step by step.
目录
1.layout改变实现动态(4次移动位置循环组成):
核心代码:
public void run() { RelativeLayout.LayoutParams temp = (RelativeLayout.LayoutParams) cat.getLayoutParams(); temp.setMargins(0,270,0,0); cat.setRotation(10); cat.setLayoutParams(temp); } }, t);
整个代码:
public void keepRun(ImageView cat){
int t = 0;
for(int i=0;i<50;i++){
run(cat,t);
t+=800;
}
}
public void run(ImageView cat,int t){
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
RelativeLayout.LayoutParams temp = (RelativeLayout.LayoutParams) cat.getLayoutParams();
temp.setMargins(0,270,0,0);
cat.setRotation(10);
cat.setLayoutParams(temp);
}
}, t);
handler.postDelayed(new Runnable() {
@Override
public void run() {
RelativeLayout.LayoutParams temp = (RelativeLayout.LayoutParams) cat.getLayoutParams();
temp.setMargins(0,270,0,0);
cat.setLayoutParams(temp);
cat.setRotation(0);
}
}, t+=200);//0.1秒后执行Runnable中的run方法
handler.postDelayed(new Runnable() {
@Override
public void run() {
RelativeLayout.LayoutParams temp = (RelativeLayout.LayoutParams) cat.getLayoutParams();
temp.setMargins(0,200,0,0);
cat.setRotation(-10);
cat.setLayoutParams(temp);
}
}, t+=200);//0.1秒后执行Runnable中的run方法
handler.postDelayed(new Runnable() {
@Override
public void run() {
RelativeLayout.LayoutParams temp = (RelativeLayout.LayoutParams) cat.getLayoutParams();
temp.setMargins(0,200,0,0);
cat.setLayoutParams(temp);
cat.setRotation(0);
}
}, t+=200);//0.1秒后执行Runnable中的run方法
}
效果:
2. 平移实现动态
3.图片翻转对称
android:scaleX="-1"
//水平翻转