Отрицательное значение ListView и TranslateAnimation не обновляет элемент под другими
Я применяю отрицательный toXDelta
в моем TranslateAnimation
и это вызывает ошибку, когда я прокручиваю список, потому что есть другой список на этот ход.
Вы можете увидеть в этом скриншоте мою проблему
Вот мой XML для оранжевого списка
<LinearLayout
android:id="@+id/ll_list_ghm"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:background="@drawable/panel_ghm"
android:orientation="vertical"
android:paddingLeft="30dip"
android:paddingRight="20dip"
android:paddingTop="40dip" >
<ListView
android:id="@+id/lv_list_ghm"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</ListView>
</LinearLayout>
И я применяю перевод на LinearLayout
ll_list_ghm.startAnimation(expend(500, true));
private Animation expend(int anim_ms, boolean is_ghm) {
Animation collapse = new TranslateAnimation(400, -20, 0, 0);
collapse.setDuration(anim_ms);
collapse.setFillAfter(true);
return collapse;
}
когда toXDelta
равно 0 или положительному int, нет проблем. У кого-нибудь когда-нибудь была эта ошибка?
Спасибо, парень, за то, что прочитал и рассказал о проблеме ма
1 ответ
Решение
Я нахожу альтернативное решение, которое состоит в том, чтобы установить отрицательную маржу для кода.
RelativeLayout.LayoutParams lp_list_ghm = new RelativeLayout.LayoutParams(metrics.widthPixels / 4, LayoutParams.FILL_PARENT);
lp_list_ghm.addRule(RelativeLayout.RIGHT_OF, R.id.ll_list_cmd);
lp_list_ghm.setMargins(-20, 0, 0, 0);
ll_list_ghm.setLayoutParams(lp_list_ghm);
Но если у вас есть другое решение, мне интересно:)