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

Как при повороте экрана показывать видео дальше, а не сначала - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Не работает UDP сервер http://www.cyberforum.ru/android-dev/thread1726188.html
Почему у меня вылетает приложение на ds.receive(dp);? В манифесте android.permission.INTERNET есть если что. public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); textView = (TextView) findViewById(R.id.text1); runUdpServer(); } private static final int UDP_SERVER_PORT = 11111;
Программирование Android Как передавать данные в предыдущее activity, используя кнопку назад в action bar? Я сделал кнопку назад ,прописав в manifest файле(как здесь http://developer.android.com/training/implementing-navigation/ancestral.html) <activity android:name=".Activity2" android:parentActivityName=".MainActivity"> <meta-data android:name="android.support.PARENT_ACTIVITY" android:value=".MainActivity" /> ... http://www.cyberforum.ru/android-dev/thread1726018.html
Поиск как в браузере Программирование Android
Доброго времени суток! Столкнулся с проблемой, что не могу найти примеров реализации поиска. Второй день уже ищу и безрезультатно. Смысл поиска: Поиск как в браузере, когда тебя переносит по найденным совпадениям в тексте и подсвечивает их. Нашел кучу реализаций поиска для ListView и прочее. Но мне нужен именно вот такой "браузерный" поиск. У меня на activity расположено несколько TextView,...
Непонятка с разметкой Программирование Android
Имею почему-то 0 вместо слова Аватар. <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="10dp"> <ImageView
Программирование Android MediaPlayer переключение http://www.cyberforum.ru/android-dev/thread1725944.html
Добрый день. Реализую переключение музыкальных файлов. Есть код. Всё просто. Одна кнопка - один трек. Всего два трека - две кнопки. Первый раз, всё успешно проигрывается, но при повторных нажатиях, на одна композиция не играет. Каким образом можно это выполнить? MediaPlayer Dzhin = new MediaPlayer(); MediaPlayer Moreana = new MediaPlayer(); public void DzhinPlay(View view)...
Программирование Android Recyclerview при onLongItemClick срабатывает и onItemClick? использую такой класс для клика по айтемам: нажимаю долгий клик открывается контекстменю а так же происходит обычный клих на этом айтеме, в чем может быть дело, помогите пожалуйста? Добавлено через 6 минут не понял что это было, но когда достал USB из телефона, все стало работать как должно %-), подсоединил опять глючит.... отбой вопроса вроде вышеприведенный класс корректный.... подробнее

Показать сообщение отдельно
Itinerant
16 / 1 / 0
Регистрация: 08.03.2016
Сообщений: 5

Как при повороте экрана показывать видео дальше, а не сначала - Программирование Android

03.05.2016, 18:17. Просмотров 442. Ответов 6
Метки (Все метки)

В общем, когда поворачивается экран видео воспроизводится сначала.
Как я понял, при повороте view элементы с id сохраняются, хотя если эта программа не работает чтото я делаю не так, но вот что не могу понять.

Javascript
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
46
47
48
49
50
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.video_view);
 
        pDialog = new ProgressDialog(VideoViewActivity.this);
        pDialog.setTitle("Пожалуйста, подождите");
        pDialog.setMessage("Идёт загрузка видео ...");
        pDialog.setIndeterminate(false);
        pDialog.setCancelable(false);
        pDialog.show();
 
        //вот одна из моих попыток
        if (savedInstanceState == null){
            videoView = (VideoView) findViewById(R.id.videoView); 
            experiment();            
        }
        else{
            pDialog.dismiss();
            videoView.start();
        }
 
    }
 
    public void experiment() {
        try {
            MediaController mediaController = new MediaController(VideoViewActivity.this);
            mediaController.setAnchorView(videoView);
            Uri video = Uri.parse(videoUrl);
            videoView.setMediaController(mediaController);
            videoView.setVideoURI(video);
        } catch (Exception e) {
            //Log.e("Error", e.getMessage());
            e.printStackTrace();
        }
        videoView.requestFocus(0);
        videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                pDialog.dismiss();
                videoView.start();
            }
        });
 
        videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mp) {
                onBackPressed();
            }
        });
    }
И layout
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#000000"
    tools:context="info.androidhive.description.VideoViewActivity">
 
    <VideoView
        android:id="@+id/videoView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true" />
</RelativeLayout>
Добавлено через 9 часов 58 минут
Решил задачку. Оказывается все так просто было. Всего лишь добавил вот это
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
int videoPosition = 0;
protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        videoPosition = videoView.getCurrentPosition();
        outState.putInt("Position", videoPosition);
        Log.d("My_Log", "onSaveInstanceState = " + videoPosition);
    }
 
    protected void onRestoreInstanceState(Bundle savedInstanceState) {
        super.onRestoreInstanceState(savedInstanceState);
        videoPosition = savedInstanceState.getInt("Position");
        Log.d("My_Log", "onRestoreInstanceState = " + videoPosition);
    }
И вот это перед стартом
Javascript
1
videoView.seekTo(videoPosition);
Добавлено через 9 часов 27 минут
А вот так еще круче. Видео при повороте заново не загружается.
Это надо прописать в манифесте
XML
1
2
3
4
<activity
            android:name=".VideoViewActivity"
            android:configChanges="orientation|screenSize"
            android:rotation="180.0"/>
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru