Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
#1

ViewPager скрыть (удалить) фрагмент - Программирование Android

02.09.2014, 15:46. Просмотров 1523. Ответов 16
Метки нет (Все метки)

Здравствуйте ув. Программисты.

Есть ViewPager с тремя Screen Layout.xml. На первой странице логотип на втором и третьем информация.

При запуске показывается первый Screen Layout с логотипом. По таймеру вызываю переход ко второму Layout.

Вопрос: как удалить первый Screen с логотипом или скрыть его. Или деактивировать Fragment

Что только не перепробовал.

onPageSelected и onPageScrolled у меня находятся в MainActivity.

http://www.cyberforum.ru/android-dev/thread1960027.html

0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.09.2014, 15:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос ViewPager скрыть (удалить) фрагмент (Программирование Android):

ViewPager
Помогите пожалуйста. Использую эту фичу в своей программе(пример один и его...

ViewPager
Здравствуйте! В приложении использовал пример с Хабра...

ViewPager
Всем. Да я недалекий и тупой, уже дня три не могу никак понять :wall: Есть...

Поворот ViewPager
Как повернуть ViewPager на 90 градусов при заблокированной портретной...

создание ViewPager
здравствуйте,возник вопрос по ViewPager. Не получается добавить компоненты...

16
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,072
02.09.2014, 15:52 #2
setCurrentItem?
Я правда не пробовал, но у меня в коде стоит пометка
// Программное перелистывание страниц осуществляется методом setCurrentItem.
1
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
02.09.2014, 15:55  [ТС] #3
Перелистывание уже осуществил (viewPager.setCurrentItem(1)). Вопрос в том как удалить первый Screen с логотипом чтоб он не мешался при перелистывании. (((
0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,072
02.09.2014, 15:59 #4
А если тут по if (position == 0) возвращать null (м.б. ошибка)? Или return возвращать по if (position > 0)
Java
1
2
3
4
    @Override
    public Fragment getItem(int position) {
      return PageFragment.newInstance(position);
    }
1
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
02.09.2014, 16:06  [ТС] #5
Да все классно только у меня getItem находится в адаптере и там код:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@Override
    public Fragment getItem(int index) {
 
      switch (index) {
            case 0:
            
            return new Screen_1();
 
        case 1:
            
            return new Screen_2();
        case 2:
        
            return new Screen_3();
        }
 
        return null;
    }
а onPageSelected в MainActivity
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
02.09.2014, 16:27 #6
Что-то мне кажется не очень правильной такая реализация SplashScreen'a, по-моему гораздо удобнее сделать для этого отдельную активити. При запуске показать ее, по таймеру ее закрыть и отобразить вторую, в которой ViewPager.
1
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
02.09.2014, 16:30  [ТС] #7
Пожалуй вы правы, но думаю мой опыт не позволит мне этого сделать. (
Есть ссылка или пример как можно это сделать?
0
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
02.09.2014, 16:35 #8
Лучший ответ Сообщение было отмечено cezer_ak как решение

Решение

Ну мне намного проще было разобраться с активити, чем с фрагментами и ViewPager'om). Почитайте уроки на startandroid.ru к примеру, самые первые как раз об этом, а счетчик тот же оставьте который сейчас, только действие другое:
Java
1
2
3
Intent gotoMainScreen = new Intent(this, MainScreen.class);
startActivity(gotoMainScreen);
finish();
Что-то подобное, для перехода к активити MainScreen.
1
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
02.09.2014, 16:36  [ТС] #9
Спасибо!
0
Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
02.09.2014, 16:51 #10
Цитата Сообщение от cezer_ak Посмотреть сообщение
Есть ссылка или пример как можно это сделать?
У меня есть. Писал когда-то:
https://dl.dropboxusercontent.com/u/...lashScreen.zip
1
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
02.09.2014, 16:54  [ТС] #11
Google Сhrome определил архив как вредоносный. Но все равно спасибо.
0
Netscape
374 / 361 / 52
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
02.09.2014, 16:58 #12
Цитата Сообщение от cezer_ak Посмотреть сообщение
Google Сhrome определил архив как вредоносный.
ну хз. может потому что там apk-файл лежит.
результат проверки на virustotal:
https://www.virustotal.com/ru/file/9...is/1409662613/
1
Spelcrawler
02.09.2014, 17:02
  #13

Не по теме:

Цитата Сообщение от Netscape Посмотреть сообщение
ну хз. может потому что там apk-файл лежит.
Тоже часто замечаю, что apk в архиве считает вирусом.

0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,072
02.09.2014, 17:22 #14
Цитата Сообщение от cezer_ak Посмотреть сообщение
Да все классно только у меня getItem находится в адаптере и там код:
А если создать статическую boolean переменную? При запуске приложения она будет false, меняем ее на true, в адаптере пишем:
Java
1
2
3
case 0:
   if (per)
      break;
1
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
02.09.2014, 19:09  [ТС] #15
Да я так пытался делать. Но не сумел передать не через Intent не через Bundle переменную у меня просто это все в разных Activity.

в MainActivity у меня методы:

Java
1
2
3
4
5
6
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
в Адаптере у меня:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@Override
    public Fragment getItem(int index) {
 
      switch (index) {
            case 0:
        
            return new Screen_1();
 
        case 1:
            
            return new Screen_2();
        case 2:
            
            return new Screen_3();
        }
 
        return null;
    }
 
    @Override
    public int getCount() { 
        return 3;
    }
0
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,072
02.09.2014, 19:55 #16
Объявляйте в MainActivity static boolean per, считывайте в другой активити MainActivity.per.
1
cezer_ak
4 / 4 / 3
Регистрация: 14.02.2013
Сообщений: 232
02.09.2014, 20:00  [ТС] #17
Попробовал, работает передача переменной, спасибо буду работать дальше. Благодарю Всех за участие!
0
02.09.2014, 20:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.09.2014, 20:00
Привет! Вот еще темы с решениями:

GridView и ViewPager
Всем привет. У меня есть GridView, в котором можно, конечно же, тыкать на...

ViewPager и TextView
В приложении ViewPager и TextView. Все работает. Теперь нужно впихнуть во...

ViewPager setText
Приветствую ув.форумчане! Скопировал данный код из startandroid,помогите как...

ViewPager и Tab
Здравствуйте. Есть приложение на андроид C# (файл проекта в приложении). Он...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

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