gpt4 book ai didi

android - 如何在android中使用流畅的动画翻译 View

转载 作者:搜寻专家 更新时间:2023-11-01 08:35:19 25 4
gpt4 key购买 nike

我编写了一段执行动画的代码。为此,我在 anim 文件夹中写了一个动画文件

my animone.xml file
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:fillAfter="true">
<translate
android:fromYDelta="0%p"
android:toYDelta="-5%p"
android:duration="1500"/></set>

在这里,我将动画应用到 LinearLayout View 上

Animation animate= AnimationUtils.loadAnimation(context,R.anim.animone);
subProfile.setVisibility(View.VISIBLE);//subProfile is a linear layout
subProfile.startAnimation(animate);

所以当我运行这段代码时。它会在指定的持续时间后突然改变 View 的位置而不会平滑滑动。我想让它顺利。请帮忙。

----------------这是我的完整代码----------------主 fragment 文件

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.videosapp.Fragments.HomeFragment"
android:background="@drawable/background">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/my_pofile"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">

<ImageView
android:id="@+id/dshImg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_centerHorizontal="true"
android:background="@drawable/dashboard"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Dashboard"
android:layout_below="@id/dshImg"
android:textColor="@color/colorText"
android:textSize="18sp"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout android:id="@+id/podcast"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/podcast"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Podcast"
android:textColor="@color/colorText"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout android:id="@+id/photo_gallery"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/photo_gallery"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Photo Gallery"
android:textColor="@color/colorText"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout android:id="@+id/social"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/social"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Social"
android:textColor="@color/colorText"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout android:id="@+id/about_us"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/aboutus"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Know US"
android:textColor="@color/colorText"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout android:id="@+id/contact_us"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/contact_us"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Contact Us"
android:textColor="@color/colorText"
android:textSize="18sp" />
</LinearLayout>
<LinearLayout android:id="@+id/setting"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/settings"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Settings"
android:textColor="@color/colorText"
android:textSize="18sp"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout android:id="@+id/exit_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="1"
android:gravity="center"
android:layout_centerInParent="true" android:visibility="gone">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/exit"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Exit"
android:textColor="@color/colorText"
android:textSize="18sp" />
</LinearLayout>
<ImageView
android:id="@+id/menu_home"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/center_menu"
android:layout_centerInParent="true" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--On following LinearLayout i want to apply animation-->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_centerInParent="true"
android:id="@+id/profile"
android:visibility="gone"
>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_profile_icon"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="My Profile"
android:gravity="center_vertical"
android:textColor="@color/colorText"
android:textSize="20sp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:orientation="horizontal"
android:layout_centerInParent="true"
android:id="@+id/programs"
android:visibility="gone"
>
<ImageView
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/folder_icon"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="My Programs"
android:gravity="center_vertical"
android:textColor="@color/colorText"
android:textSize="20sp"
/>
</LinearLayout>
</RelativeLayout>

--------------------动画xml文件------------------------

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="300"
android:fromYDelta="0%"
android:interpolator="@android:anim/decelerate_interpolator"
android:toYDelta="-100%" /></set>

------------我在其中应用点击事件动画的 java 文件------------

public void onClick(View v) {
switch (v.getId()) {
case R.id.my_pofile:
animate= AnimationUtils.loadAnimation(ctx,R.anim.animone);
subProfile.setVisibility(View.VISIBLE);
subProfile.startAnimation(animate);
break;
//other cases
}}

最佳答案

试试这个:

  <?xml version="1.0" encoding="utf-8"?>

<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="300"
android:fromYDelta="0%"
android:interpolator="@android:anim/decelerate_interpolator"
android:toYDelta="-100%" />

关于android - 如何在android中使用流畅的动画翻译 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37114514/

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