Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Kenobi OV
0 / 0 / 0
Регистрация: 23.01.2016
Сообщений: 3
#1

Не работает анимация в строках ListView - Программирование Android

23.01.2016, 20:56. Просмотров 246. Ответов 4

Пытаюсь реализовать серверный запрос, после чего удалить элемент ListView, по которому кликнул пользователь. Во время запроса к серверу в View строки добавляется ProgressBar, анимация которого не работает (ProgressBar становится видимым, но не вращается). ListView находится в Fragment, который появляется при некоторых действиях пользователя.
Исходный код инициализации View ListAdapter'a:

Java
1
2
3
4
5
6
7
8
9
10
11
12
private void createNewView(final UserInfo userInfo, final int position) {
    LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    final View rowView = inflater.inflate(R.layout.listadapter_row_item, null, false);
 
    TextView mainText = (TextView) rowView.findViewById(R.id.dutyUsersListadapterMainTextview);
    mainText.setText(userInfo.lastname);
 
    TextView additionalText = (TextView) rowView.findViewById(R.id.dutyUsersListadapterAdditionalTextview);
    additionalText.setText(String.format("%s %s", userInfo.firstname, userInfo.middlename));
 
    mViews.add(rowView);
}
Отображение ProgressBar в строке ListView:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
mUsersList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, final View view, final int position, long id) {
        final ProgressBar pb = (ProgressBar) view.findViewById(R.id.adapter_row_deleting_progressbar);
        pb.setVisibility(View.VISIBLE);
 
        RestClient.getInstance().addUser(selectedUser.id, new TextHttpResponseHandler() {
            @Override
            public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {
                pb.setVisibility(View.GONE);
                mUsersListAdapter.setEnabled(position, true);
            }
 
            @Override
            public void onSuccess(int statusCode, Header[] headers, String responseString) {
                pb.setVisibility(View.GONE);
                view.setAnimation(AnimationUtils.loadAnimation(activity, R.anim.move_to_left_animation));
                new Handler() {{
                    postDelayed(new Runnable() {
                        @Override
                        public void run() {
                            mUsersListAdapter.removeItem(position);
                            activity.resetFragmentsData();
                        }
                    }, 500);
                }};
            }
        });
    }
});
Исходный код layout-файла listadapter_row_item:

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<ImageView
    android:layout_weight=".2"
    android:layout_width="0dp"
    android:layout_height="@dimen/userlist_photo_height"
    android:id="@+id/listadapterImage"
    android:src="@drawable/empty_user_photo" />
 
<LinearLayout
    android:orientation="vertical"
    android:layout_weight=".6"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:padding="10dp">
 
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Lastname"
        android:id="@+id/listadapterMainTextview" />
 
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text="Firstname Middlename"
        android:id="@+id/usersListadapterAdditionalTextview" />
 
</LinearLayout>
 
<RelativeLayout
    android:orientation="vertical"
    android:layout_weight=".2"
    android:layout_width="0dp"
    android:layout_height="@dimen/duty_userlist_photo_height"
    android:weightSum="1"
    android:gravity="center_vertical|center_horizontal">
    <ProgressBar
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/adapter_row_deleting_progressbar"
        android:indeterminate="true"
        android:visibility="gone" />
</RelativeLayout>
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2016, 20:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не работает анимация в строках ListView (Программирование Android):

Анимация ListView - Программирование Android
В чем суть:При вертикальном свайпе - кнопки прокручиваются. Крайняя кнопка - плавно уменьшается, а с другой стороны - плавно увеличивается....

Анимация одного пункта в ListView - Программирование Android
Собственно, есть у меня список контактов в ListView, заполняемом моим адаптером. При движении справа-налево по контакту а меня происходит...

Анимация в Listview (добавление/удаление) - Программирование Android
Собственно, решаю задачу, нужно в имеющийся список ListView добавить анимацию, для заполнения списка данными использую SimpleAdapter (может...

Не работает анимация загрузки - Программирование Android
Здравствуйте! Не могу понять, почему не запускается анимация... Вот activity: package com.contedevel.timetable; import...

ListView не работает - Программирование Android
в чем проблема не могу вкурить import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.view.View; ...

В Webview не работает анимация CSS - Программирование Android
Всем доброго времени суток! Нужно сделать приложение на основе сайта, на сайте есть Выплывающая панель... CSS: #navPanel { ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
montanaPy
2 / 2 / 1
Регистрация: 19.01.2015
Сообщений: 121
24.01.2016, 01:42 #2
ProgressBar нужно анимировать самостоятельно и запускать в отдельном потоке во время выполнения продолжительной операций. Вот тут написано про это и тут
0
Kenobi OV
0 / 0 / 0
Регистрация: 23.01.2016
Сообщений: 3
24.01.2016, 15:54  [ТС] #3
Вы не поняли вопроса. В строке ListView не работает вообще никакая анимация. Проблема обнаружилась при попытке сделать анимированным удаление элементов списка. После этого добавил вращающийся ProgressBar, уведомляющий пользователя о происходящей операции, а анимации как не было, так и не появилось (анимации врещения ProgressBar также нет)
0
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
24.01.2016, 16:04 #4
Kenobi OV, а если убрать gone из разметки, будет виден прогрессбар?
0
Kenobi OV
0 / 0 / 0
Регистрация: 23.01.2016
Сообщений: 3
24.01.2016, 16:36  [ТС] #5
Да, прогрессбар виден, но анимации так и нет
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2016, 16:36
Привет! Вот еще темы с ответами:

В ListView не работает OnItemClickListener - Программирование Android
Здравствуйте, Впервые попался на такую проблему, что в ListView не работает OnItemClickListener. При клике на элемент списка, в...

Не работает метод ListView::setChoiceMode - Программирование Android
Я использую список с двойным содержание в одном элементе: evList = (ListView) l.findViewById(R.id.evList); SimpleAdapter el =...

ListView не работает выбор элемента - Программирование Android
Доброго времени суток. Который день мучаюсь. Не знаю как поменять цвет ListView, так что бы не сбить работу выбора элемента при нажатии....

Дело в коде или глюк Студио? Один из пунктов ListView не работает - Программирование Android
Здравствуйте, подскажите пожалуйста, где проблема, всю голову сломал уже. С помощью ListView сделал меню, названия пунктов меню берутся из...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
24.01.2016, 16:36
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru