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

Восстановление позиции ListView по возвращении из другого Activity - Android

Восстановить пароль Регистрация
Другие темы раздела
Android Как создать свой блокнот в Android Studio? http://www.cyberforum.ru/android-dev/thread1713248.html
Для приложения хочу реализовать некий блокнот или заметки, где пользователь сможет пользуясь приложением делать заметки и сохранять их. Можете подсказать как реализовать это?
Android Как сделать так, чтобы мобильное приложение автоматически подстраивалось под размер экрана? В Android Studio мы же под определенную диагональ создаём приложение (один эмулятор).. Как при разработке сделать так, чтобы мобильное приложение корректно отображалось на всех диагоналях? ("4.7" "4.5" "5.7" "5.0" и т.д.) http://www.cyberforum.ru/android-dev/thread1713150.html
Простейшая работа с интерфейсом Android
Я уже далеко не начинающий программист, но на Джаве никогда ничего не писал. Решил попробовать что-то интересное под андроид написать. Думал, все так же просто, как в Delphi, но нет! У меня есть ImageView, как мне установить свойство .ROTATION в какое-то значение? Делаю так: ImageView.ROTATION = 10; Ругается. Может, я что-то не подключил или забыл? И еще: если знаете, как добавлять события,...
NoClassDefFoundError неизвестно из-за чего Android
Всем привет. В общем проблема оч интересного характера. Поддерживаю старый свой проект который делался еще в далеком 2012 году. Его поддерживали до меня еще три человека со слов заказчика которые делали там разные фичи, добавляли баги, фиксили баги ну и т. д. Недавно я снова взялся за поддержку проекта, сразу после этого я взялся за голову с того что там понаписывали, скока говнокода там...
Android Как сделать такое activity? http://www.cyberforum.ru/android-dev/thread1713059.html
Добрый день. Для начала по прошу держать свои камни при себе да бы они не попали в меня. Так как я начинающий в этом деле человек. Хочу сделать приложение у которого будет такое Activity. Как вы видите на рисунке 1 это приложение в фоне. Так же можно открыть любое приложение и это приложение тоже будет в фоне. При нажатии на это приложение оно открывается (см. рисунок 2). Хочу сделать...
Android Замена текста в одном TextView Подскажите как сделать так, чтобы при нажатии на кнопку (Которая находится справа внизу), при каждом новом нажатии менялся текст в TextView и менялась картинка в ImageView. Если есть возможность, выведите код, который необходимо вписать, чтобы получилось желаемое действие. public class MainActivity extends AppCompatActivity { private TextView mText; @Override protected... подробнее

Показать сообщение отдельно
CoolMind
411 / 394 / 65
Регистрация: 06.10.2012
Сообщений: 1,701
18.04.2016, 17:09     Восстановление позиции ListView по возвращении из другого Activity
gelios_oleg, не за что!
Что-то я не увидел у вас корректного кода.
Если вы вызываете одну активность из другой, можно использовать startActivityForResult, она отрабатывает всегда (сложные случаи лишь для фрагментов и ещё есть проблемный момент для фотографирования).
Открываю первую попавшуюся ссылку (http://developer.alexanderklimov.ru/...d/activity.php).
Запуск:
Java
1
2
Intent intent = new Intent(MainActivity.this, ChooseActivity.class);
startActivityForResult(intent, CHOOSE_THIEF);
Константа CHOOSE_THIEF в данном случае определяет для onActivityResult, из какой активности мы вернёмся. Можете обозвать её как угодно и присвоить любое уникальное числовое значение. Например, CHOOSE_THIEF = 100.
Дальше требуется передать в intent все необходимые параметры.
Java
1
2
3
intent.putString("что-то", value1);
intent.putBoolean("признак", true);
intent.putLong("позиция", offset);
Теперь пропишите в ChooseActivity (вместо этого названия - ваше) обработку параметров, какие-то действия и возврат.
Java
1
2
3
4
5
Intent intent = getIntent();
String user = intent.getStringExtra("что-то");
boolean b = intent.getBooleanExtra("признак");
long offset = intent.getLongExtra("позиция");
// Дальнейшая работа.
Когда задумаете возвращаться, надо прописать следующее. Во многих руководствах предлагается вернуться по кнопке, но это ахинея, потому что пользователь может вернуться по кнопке "Назад". Надо переопределить событие onBackPressed().
Java
1
2
3
4
5
6
7
 @Override
    public void onBackPressed() {
            Intent intent = new Intent();
            intent.putExtra("позиция", offset);
            setResult(RESULT_OK, intent);
        super.onBackPressed();
    }
Теперь надо словить событие onActivityResult в вызывающей активности.
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
 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data)
    {
        super.onActivityResult(requestCode, resultCode, data);
 
        switch (requestCode)
        {
            case CHOOSE_THIEF:
                if (resultCode == RESULT_OK && data != null) {
                    if (data.hasExtra("позиция")) {
                       long offset = data.getLongExtra("позиция", -1);
                       // Тут прокрутите к нужной позиции.
                    }
                }
                break;
 
            case DEFECT_PHOTO_TAKE_REQUEST_CODE:
                if (resultCode == RESULT_OK) {
                }
                break;
 
            default:
                break;
        }
    }
Код не проверял, он может не работать, делайте сами.
 
Текущее время: 20:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru