gpt4 book ai didi

textview 上的 Android 缩放动画导致文本移动

转载 作者:太空宇宙 更新时间:2023-11-03 13:24:39 29 4
gpt4 key购买 nike

我有一个动画定义为

规模.xml

<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:fromXScale="1.0"
android:fromYScale="1.0"
android:toXScale="2.0"
android:toYScale="2.0"
android:duration="3000">
</scale>
</set>

以编程方式添加,通过

TextView tv2 = (TextView) pw.getContentView().findViewById(R.id.playresultPopupYardsTextView);
Animation scale = AnimationUtils.loadAnimation(this, R.anim.scale);
scale.setStartOffset(5000);
scale.setFillAfter(true);
tv2.clearAnimation();
tv2.setAnimation(scale);

pw 是一个 PopupWindow 定义为

LayoutInflater inflater = (LayoutInflater) this.getSystemService(view.getContext().LAYOUT_INFLATER_SERVICE);                
final PopupWindow pw = new PopupWindow(
inflater.inflate(R.layout.playresult_popup, null, false),
700,
300,
true);

布局如下playresult_popup.xl

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:padding="10dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="#CC667788"
>

<TextView
android:id="@+id/playresultPopupPlaysTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:gravity="center_horizontal"
android:textStyle="bold"
android:textColor="#FFFFFF"
android:textSize="22sp"
android:text=""
/>

<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:gravity="center_horizontal"
android:textStyle="bold"
android:textColor="#FFFFFF"
android:textSize="18sp"
android:text="Yards Gained"
/>


<TextView
android:id="@+id/playresultPopupYardsTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:gravity="center_horizontal"
android:textStyle="bold"
android:textColor="#FFFFFF"
android:textSize="18sp"
android:text=""
/>

</LinearLayout>

当缩放动画运行时,它会按预期缩放文本,但每一步都会向弹出窗口的右侧移动。我想知道这是否是因为我没有声明轴心点 - 如果是这样,我如何获得要使用的正确轴心点,以便文本保持原位,只是按比例缩放?

我已经搜索过,但没能找到解释。

最佳答案

我想通了。我没有意识到您可以使用百分比值作为轴心点。添加 pivotX="50%"和 pivotY="50%"解决了这个问题。所以:

<scale android:fromXScale="1.0"
android:fromYScale="1.0"
android:toXScale="2.0"
android:toYScale="2.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="3000">
</scale>

关于textview 上的 Android 缩放动画导致文本移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22258041/

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