Android自实现activity之间切换,view随手指移动

</pre>实现手指滑动切换activity,带动画,view会随手指的位置切换,有动画。</p><p><span style="white-space:pre">	</span><pre name="code" class="java">public class SecondActivity extends BaseActivity implements ScrollXListener {

	private int height = 0, width = 0;
	private Window window;
	private WindowManager manager;
	View view;
	@Override

protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		view = LayoutInflater.from(this).inflate(R.layout.second_activity_layout, null);
		setContentView(view);
首先这里不是使用的id把view塞进去,首先获得view,以供后面使用该view实现想要的动画

自定义的回调函数,用于手指在滑动的时候,获得触点的位置
		setScrollXListener(this);

		Display display = getWindowManager().getDefaultDisplay();
		width = display.getWidth();
		height = display.getHeight();
获得屏幕的高和宽

	}

	@Override
	public void scrollX(float x,MotionEvent e1, MotionEvent e2) {
		// TODO Auto-generated method stub
		Log.d("test", "int  ----    " + x);
		Float f = new Float(x);
		

在回调函数中改变view的位置
		view.setX((e2.getX()-e1.getX()));
		view.setY(0);
		
	}

	@Override
	public void flingX(MotionEvent e1, MotionEvent e2) {
		// TODO Auto-generated method stub
		if(e2.getX()>width/2){
			finish();
//			overridePendingTransition(R.anim.anim_stand_alpha, R.anim.anim_right_out);
		}else if(e2.getX()<width/2){
			view.setX(0);
			view.setY(0);

		}
	}
在手势的实践中,onScroll和onFling的两个<span style="font-family: Arial, Helvetica, sans-serif;">MotionEvent e1, MotionEvent e2是不同的,一个是起始点和实时的点的位置,另一个是起始点和手指离开的时候的位置。</span>

}
这里是核心功能的实现,美化的话自己实现
需要源代码的话:damengzai@sohu.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值