Ben*_*Ben 2 animation android listview scale
在ListView行的内部,我有一个框(现在它是一个imageview,但我可能会在某个时候将它转换为线性或相对布局对象).当你点击该框时,我开始一个缩放动画,使它看起来增长.但是,一旦动画结束,该框立即返回其原始状态.我想让盒子保持在变形的尺寸(至少直到它们再次点击它).
这是xml:
<scale
android:fromXScale="1" android:toXScale="5"
android:fromYScale="1" android:toYScale="1"
android:pivotX="100%" android:pivotY="0%" android:fillAfter="true"
android:duration="600" />
Run Code Online (Sandbox Code Playgroud)
我能够做到这一点的唯一方法是每隔1ms改变新线程上盒子的宽度.不漂亮,但似乎是保持盒子边框的唯一方法.如果你拿出一个使用动画f/w的选项,请告诉我...
这里是代码Rohan,别忘了给我一个投票:)
private void toggleMenu(final ViewHolder menu, final boolean doExpand) {
final LayoutParams params = menu.actionMenu.getLayoutParams();
final int originalWidth = params.width;
Thread t = new Thread() {
@Override
public void run() {
for (int i = 0; i < 200; i++) {
if (doExpand) {
params.width = originalWidth + i;
} else {
params.width = originalWidth - i;
}
menu.actionMenu.post(new Runnable() {
@Override
public void run() {
menu.actionMenu.requestLayout();
}
});
try {
Thread.sleep(1);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
menu.expandCollapseButton.post(new Runnable() {
@Override
public void run() {
if (doExpand) {
menu.expandCollapseButton
.setImageResource(R.drawable.monotone_arrow_right);
} else {
menu.expandCollapseButton
.setImageResource(R.drawable.monotone_arrow_leftpng);
}
}
});
// menu.isExpanded = !menu.isExpanded;
}
};
t.start();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1850 次 |
| 最近记录: |