gpt4 book ai didi

android - 动态改变按钮的 X 和 Y 位置/改变按钮的边距

转载 作者:行者123 更新时间:2023-11-30 04:50:02 24 4
gpt4 key购买 nike

我想在 d applcn 中更改按钮的边距...假设我在线性布局中有 5 个这样的按钮,一个在其他按钮下方...

当我关注一个按钮时,它的宽度应该增加(我知道如何处理),同时宽度应该向左和向右线性增加。

即如果按钮的当前宽度为 250,x 坐标为 50(这意味着按钮的左侧为 50,按钮的右侧为 300),当我关注按钮时,我应该得到 x 坐标为 75(左侧 = 25 和右 = 325)。如何改变按钮的 margin/x 坐标?

最佳答案

http://developer.android.com/reference/android/view/animation/Animation.html 查看 AnimationScaleAnimation 类和 http://developer.android.com/reference/android/view/animation/ScaleAnimation.html .

一种方法是在 res/anim 目录中定义两个 XML 文件,一个使按钮变大,另一个使按钮变小。所以对于 makeLarger.xml

<scale xmlns:android="http://schemas.android.com/apk/res/android" 
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromXScale="1"
android:toXScale="1.1"
android:pivotX="50%"
android:pivotY="50%"
android:duration="200"
android:fillAfter="true" />

在这里,您将宽度增加 10%,从 1.0 增加到 1.1。对于 makeSmaller.xml 文件,交换 android:fromXScaleandroid:toXScale 的值,或者根据需要设置它们。要将动画应用到您的按钮,

Button myButton = (Button)findViewById(R.id.myButton);
myButton.setAnimation(AnimationUtils.loadAnimation(this, R.anim.makeLarger));

当然,makeLarger 和 makeSmaller 动画应该在您触摸按钮时设置。

希望对您有所帮助!

关于android - 动态改变按钮的 X 和 Y 位置/改变按钮的边距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3786511/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com