我想在Activity中调整一些布局的大小.
这是主XML的代码:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/top"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:background="#3ee3e3" >
</LinearLayout>
<LinearLayout
android:id="@+id/middle"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1">
</LinearLayout>
<LinearLayout
android:id="@+id/bottom"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1"
android:background="#fe51e6" >
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
如您所见,顶部和底部布局高度为0,中间布局覆盖所有位置.
我想以编程方式减少中间布局大小,同时增加顶部和底部布局大小,直到所有布局具有相同的高度.
我希望它看起来像一个动画.
我该怎么办?
谢谢
这两个术语出现在很多地方,但它们在Android动画的背景下究竟是什么意思呢?
我有一个带有几个"正常"活动的应用程序,可以在横向或纵向上运行.它们专为肖像而设计.
这个应用程序有一个单独的活动,使用相机,并锁定在景观.我通过将图像和文本旋转90度来模拟'此活动是在肖像上,所以它看起来像其他活动.
在某些设备上,例如Samsung Galaxy Tab 7和Galaxy S3,从正常的纵向活动到相机横向活动并返回时,会显示旋转动画.这对用户来说很困惑,因为景观活动模拟了肖像.
有没有办法删除这个旋转动画?理想情况下,我想更改为默认的纵向到纵向动画,但只是删除旋转动画就足够了.
我试过了
overridePendingTransition(0, 0);
Run Code Online (Sandbox Code Playgroud)
该方法的其他变体没有成功.
[添加]
根据@igalarzab,@ Georg和@Joe的建议,我做到了这一点(仍然没有运气):
我有这些结果:
[视频]
我上传了一个显示我要禁用的动画的视频.当在肖像上按住手机时从相机活动(锁定到风景)更改为其他活动时会发生这种情况:
我有一个嵌套的布局,如下所示:
<LinearLayout> <!----Parent layout--->
<LinearLayout> <!-----child 1--->
...
</LinearLayout> <!----child 1 ended--->
<LinearLayout> <!-----child 2--->
...
</LinearLayout> <!----child 2 ended--->
</LinearLayout> <!----Parent endded--->
Run Code Online (Sandbox Code Playgroud)
我现在遇到的问题是,由于我的所有数据项都在子项1或子项2中Linearlayout,如果我添加或删除项目,子行为布局将使用animateLayoutChanges的效果进行动画处理,但父布局不会执行任何动画.(我已android:animateLayoutChanges设置true为所有线性布局).特别是当我删除子1中的项目时,动画效果变得怪异(基本上,当孩子1仍然在做动画时,孩子2会跳起来).
有谁知道如何解决这个问题?
谢谢
UPDATE
在我发布这个问题后不久,我在LayoutTransition API的android开发者网站上发现了这个问题.
由于各种布局级别的相互关系,在嵌套视图层次结构的多个级别使用LayoutTransition可能不起作用.
那么有没有人有任何关于这个问题的建议呢?
现在我通过检查进度何时达到100来检测我的ValueAnimator的结束...
//Setup the animation
ValueAnimator anim = ValueAnimator.ofInt(progress, seekBar.getMax());
//Set the duration
anim.setDuration(Utility.setAnimationDuration(progress));
anim.addUpdateListener(new AnimatorUpdateListener()
{
@Override
public void onAnimationUpdate(ValueAnimator animation)
{
int animProgress = (Integer) animation.getAnimatedValue();
if ( animProgress == 100)
{
//Done
}
else
{
seekBar.setProgress(animProgress);
}
}
});
Run Code Online (Sandbox Code Playgroud)
这是正确的方法吗?我阅读了文档,但在完成时无法找到任何类型的监听器或回调.我试过使用,isRunning()但它没有用.
我计划在我的一个项目中实现这样的东西,但我不清楚以下概念,也没有这样的教程,而且你不经常看到这个.这是它的样子点击这里去源

从我所理解的所有参考文献中他们已经使用了两种类型的过渡,一种是将按钮移动到一些现存的按钮,另一种是用于触发按钮.所以我做了一些挖掘并遇到了这两个库
github我认为这两个我们可以实现以下动画这里是链接
如果您对以下内容有任何更好的答案,请在此发布
我有一个ListView.最初,它ListView包含一些数据.当用户点击某个项目时,另一个布局将动态添加到该项目中,因此它的高度将会增加.
现在,当项目的高度增加时,它会立即显示修改后的项目.但是,我想要的是动画,所以逐渐增加项目的高度.
android expandablelistview expandablelistadapter android-animation android-listview
这看起来很简单:我正在尝试将插值器设置为在我的应用程序中用于动画.我需要在Java代码中设置它,而不是XML(它会根据各种事情而改变).
从android网站上,我发现了 setInterpolator()
但是,我不知道如何使用它.
我试过加入极谱名称(即.BounceIterpolator),但这没有做任何事情.
我试过了R.anim.BounceIterpolator,但Intellisense说anim cannot be resolved or is not a field.
那么如何从Java设置插补器呢?
我正在做一个缩放动画,anim xml如下所示.动画插值器不起作用.我试图弹跳插值器但是没有工作.
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<scale
android:duration="900"
android:fromXScale="1"
android:fromYScale="0.5"
android:interpolator="@android:anim/bounce_interpolator"
android:pivotX="50%"
android:pivotY="0%"
android:toXScale="1.0"
android:toYScale="1.0" />
</set>
Run Code Online (Sandbox Code Playgroud)
编辑:其实我的整个xml是
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<scale
android:duration="600"
android:fromXScale="1"
android:fromYScale="0.5"
android:interpolator="@android:anim/bounce_interpolator"
android:pivotX="50%"
android:pivotY="0%"
android:toXScale="1.0"
android:toYScale="1.0" />
<alpha
android:duration="@android:integer/config_longAnimTime"
android:fromAlpha="0.0"
android:interpolator="@android:anim/decelerate_interpolator"
android:toAlpha="1.0" />
</set>
Run Code Online (Sandbox Code Playgroud) 自5月以来,Google已在其网站上更新了材料设计指南.我在一个名为Feature discovery的新部分中看到了一个有趣而酷的设计模式.
我想实现动画"发现"导航抽屉按钮.导航抽屉和浮动操作按钮的最后一次Google Fit更新中有类似的动画.
通常,对于Android动画,Google提供了一个很棒且非常棒的UI指南,但是我们没有任何进一步的信息来为我们自己的应用程序开发它.
你知道是否有Android库的原生解决方案来实现这些动画?如果是,它是否适用于Android 5.0以下(API 21) - 它可以高于Android 4.1+?
编辑:我做了一个Github项目来实现相同的动画.你可以在这里找到它:https://github.com/Guimareshh/Feature-discovery-animations
谢谢 !