如何使ImageView在屏幕上随机移动而不会脱离屏幕?

问题描述:

我有一个ImageView,我想每次随机方向在屏幕上缓慢移动,但是当它碰到屏幕的边缘时,我希望它在另一个方向弹起,有点像the old DVD player screen saver。如果没有建立一个物理世界,这是可能的吗?如果是这样,请你举个例子吗?如何使ImageView在屏幕上随机移动而不会脱离屏幕?

编辑:我还没有实现任何的代码,但因为我还没有发现适合所有的标准方法,但我已经实现了这一点:

DisplayMetrics displaymetrics = new DisplayMetrics(); 
int screenHeight = displaymetrics.heightPixels; 
int screenWidth = displaymetrics.widthPixels; getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); 

,但只有两个方法,我能想到的为了实现我想要的动作是ViewPropertyAnimator,或者直接用整数直接翻译X和Y,我想不出如何随机地将它整合到屏幕尺寸中。

+0

到目前为止你有什么? – vinitius 2015-02-11 20:22:21

我认为你可以使用视图动画,你可以检查一些文档http://developer.android.com/guide/topics/graphics/view-animation.html

+0

但是,您将如何设置动画的边界?我已经阅读了所有关于视图和对象动画的指南,并且我找不到任何可以让您不仅限制动画区域而且还使视图与边界交互的任何内容。我可以使用视图动画的唯一方法是如果我为每个视图预先确定了X和Y的开始和结束,并且这不是随机的,就像我在问题中所问的一样。 – Ben 2015-02-11 23:04:16