Gereykhanov
@Gereykhanov
Инженер-разработчик

Как динамически изменить размер ListViewItem с добавлением анимации?

Есть ListView с пользовательским адаптером и следовательно listViewItem с элементами интерфейса (button, textView, textEdit, IimageView). При нажатии на определенный Item изменяется размер самого Item(а) через setMinimumHeight (по высоте), а как сделать изменение размера с добавлением анимации? Например с плавным увеличением размера.
  • Вопрос задан
  • 2979 просмотров
Решения вопроса 1
@Noxa
Воспользуйтесь официальным гайдом.
developer.android.com/guide/topics/graphics/prop-a...

Вы были на правильном пути. Получить событие нажатия на элемент можно в двух местах:
1) В адаптере, при создании View
2) В активити, вызвав getListView().setOnItemClickListener()

getListView().setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                ObjectAnimator objectAnimator = ObjectAnimator.ofInt(view,"minimumHeight",300);
                objectAnimator.setDuration(2000);
                objectAnimator.start();
            }
        });
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Gereykhanov
@Gereykhanov Автор вопроса
Инженер-разработчик
это да, но мне важен момент применения этих анимаций непосредственно к самому Item(у), например для того чтоб вызвать анимацию button нужно:
final Animation animRotate = AnimationUtils.loadAnimation(this, R.anim.anim_rotate);
  
       Button button = (Button) findViewById(R.id.button);

       button.setOnClickListener(new Button.OnClickListener() {
                   @Override
                    public void onClick(View view) {
                    view.startAnimation(animRotate);
                    }});


а как быть с listViewItem и как к нему это применить?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы