Отрицательное значение ListView и TranslateAnimation не обновляет элемент под другими - PullRequest
0 голосов
/ 14 марта 2012

Я применяю отрицательный toXDelta в моем TranslateAnimation, и это вызывает ошибку, когда я прокручиваю список, потому что есть другой список на этот ход.

Вы можете видеть в этом снимке экранамоя проблема enter image description here

Это мой 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 Ответ

0 голосов
/ 15 марта 2012

Я нахожу альтернативное решение, которое заключается в установке отрицательного поля для кода.

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);

Но если у вас есть какое-то другое решение, я заинтересован:)

...