【发布时间】:2011-10-26 13:03:37
【问题描述】:
好的,所以我检查了 http://android-developers.blogspot.com/2011/02/animation-in-honeycomb.html
他说你可以在给定的时间内为对象的属性设置动画。我试着在物体周围移动,它看起来很好。我在更改 LinearLayout 的宽度时遇到了问题。我得到了这个:
10-26 14:51:27.190: E/PropertyValuesHolder(12681): Couldn't find setter/getter for property width with value type float
然后我尝试使用“myWidth”扩展LinearLayout
public void setMyWidth(int myWidth) {
LinearLayout.LayoutParams params = (LayoutParams) getLayoutParams();
params.weight = myWidth;
setLayoutParams(params);
requestLayout();
this.myWidth = myWidth;
}
没有运气。然后我尝试更改 LayoutParams.width,结果显示宽度和高度是 Java 历史上唯一的公共属性,而 ObjectAnimator 需要 getter 和 setter。没运气。 我很尴尬地说我也尝试过扩展 LayoutParams ......没有运气。
有人成功地做了这样的事情吗?我使用了旧的 android.view.animation,我得到了我想要的,但我对未来很好奇。
【问题讨论】:
-
不幸的是,我有一个类似的问题。我没有为宽度设置动画,而是尝试为 weightSum (确实有一个 getter/setter)设置动画以达到相同的效果。也许您可以尝试类似的方法来实现您想要的,但我无法让它发挥作用:stackoverflow.com/questions/8341745/…。如果我有一些结果,我会及时通知你
标签: android