我希望点a后让b在原始基础上向右移动20像素要如何做?

为什么有getScrollX,getScrollY,getLocationInWindow,getLocationInScreen这些获取坐标的函数,却没有对应的set函数?
假设layout里就两个button,ID分别为a和b,我希望点a后让b在原始基础上向右移动20像素要如何做?求教大家了,谢谢了~

慕容3067478
浏览 109回答 2
2回答

拉风的咖菲猫

RelativeLayout.LayoutParams ballLp = (android.widget.RelativeLayout.LayoutParams)b.getLayoutParams();ballLp.leftMargin = 从你控件的基础上加20像素;ballLp.topMargin = 不变:b.setLayoutParams(ballLp);这没有移动的动画,只是直接跳到次位置上要有移动的话可以加动画,或者让这段代码执行20次,每次leftMargin增加1就可以了。

FFIVE

button 貌似不能直接固定位置,好像要嵌套在一个什么里面,居体记不清了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android
Java