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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 123, средняя оценка - 4.86
spydark91
85 / 85 / 2
Регистрация: 03.03.2011
Сообщений: 1,873
#1

Перелистывание экранов - Программирование Android

07.05.2013, 22:26. Просмотров 16612. Ответов 96
Метки нет (Все метки)

Если кто пользовался официальным приложение для ВК под андройд, то в разделе "новости" если провести пальцем по экрану,то от выползает как бы его продолжение (такой эффект встречается довольно часто в множестве приложений)
существует ли какой - либо контейнер для этого, разметка или это все делается иначе?
подскажите как
надо не просто сменить экран ( функцией setContentView, например) ,а именно перелистыванием
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2013, 22:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Перелистывание экранов (Программирование Android):

Анимация перелистывание - Программирование Android
Доброго времени суток! Кто знает? Как сделать так чтобы перелистывание активитиев происходило так как будто перелистываешь книжку)

Создание экранов - Программирование Android
Только начал изучать Android да и Java тоже. Хочу узнать, как сделать несколько экранов. Типа авторизация, при успешной открытие 2-ого...

Горизонтальная прокрутка экранов - Программирование Android
Здравствуйте. Подскажите пожалуйста, как можно создать частичную горизонтальную прокрутку экранов, т.е. у меня в верхней части экрана...

Генерация цветовых экранов - Программирование Android
Добрый день! Необходимо реализовать мигание экрана смартфона в соответствии с определенным алгоритмом (что то на подобии милицейской...

TabHost и переключение экранов - Программирование Android
Доброго времени суток и с Днём Программиста!=) У меня возникла ситуация... ЕстьTabHost c тремя вкладками. Содержимым каждой вкладки...

Размеры экранов планшетов - Программирование Android
Всем привет. Вот какая штука. У гуглов в доках сказано что если в папочку sw600dp положить разметку, то она будет самостоятельно работать...

96
spydark91
85 / 85 / 2
Регистрация: 03.03.2011
Сообщений: 1,873
16.05.2013, 00:37  [ТС] #31
как теперь использовать методы..?
0
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
16.05.2013, 00:39 #32
Java
1
2
Registration_Activity activity = (Registration_Activity)getActivity();
activity.method();
1
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
18.05.2013, 15:18 #33
Так а решение есть: а как запретить перелистывание экрана пальцем? ???
0
spydark91
85 / 85 / 2
Регистрация: 03.03.2011
Сообщений: 1,873
18.05.2013, 16:19  [ТС] #34
у меня нет
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
18.05.2013, 16:38 #35
Цитата Сообщение от spydark91 Посмотреть сообщение
у меня нет
Жаль.

Сейчас пытаюсь разобрать как с одного фрагмента перейти на другой. Так что-то не получается. Пытаюсь так:

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
public class Registration_Fragment1 extends Fragment {  
    
     public ViewPager mViewPager;
     MevolutionActivity meVol = new MevolutionActivity();
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {      
        
        
        View myView = inflater.inflate(R.layout.registration_screen1, container, false);   
 
        //добавляю
        Button but1 = (Button)myView.findViewById(R.id.buttonBig);
        
        but1.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
        mViewPager.setCurrentItem(2);
         Toast toast = Toast.makeText(getActivity(), 
                           "Кнопка нажата!", Toast.LENGTH_SHORT); 
                        toast.show(); 
            }
        });
             return myView;
    }
       }
0
spydark91
85 / 85 / 2
Регистрация: 03.03.2011
Сообщений: 1,873
19.05.2013, 11:18  [ТС] #36
видимо дело в том что он не видит объекта mViewPager
это потому что он объявлен в другом классе, родительской активности
чтоб к нему обратиться надо сделать так

Java
1
2
Registration_Activity parentA = (Registration_Activity)getActivity();
parentA.mViewPager.setCurrentItem(2);
где Registration_Activity класс - контейнер
и mViewPager, соответственно должен быть объявлен публично

Java
1
parentA.mViewPager.setCurrentItem(2);
отсчет фрагментов начинается с нуля, т.е. тут вы вызываете 3 фрагмент. вдруг не знали
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
19.05.2013, 23:51 #37
А как передать данные их Fragment1 в Fragment2?

пытаюсь так в OnCrateView:

Java
1
2
3
4
5
6
Fragment1 f = new Fragment1();
                int index = 999;
                    // Supply index input as an argument.
                    Bundle args = new Bundle();
                    args.putInt("index", index);
                    f.setArguments(args);
получаю в OnCrateView fragment2 так:

Java
1
getArguments().getInt("index", 0)
0
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
20.05.2013, 00:00 #38
Java
1
2
MyFragment fragment = (MyFragment) getSupportFragmentManager().findFragmentById(R.id.my_fragment);
fragment.setIndex(index);
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
20.05.2013, 00:06 #39
не понятно... можно объяснить куда это писать??? и как потом получить??
0
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
20.05.2013, 00:08 #40
туда, где вам нужно передать индекс.
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
20.05.2013, 00:12 #41
мне нужно из фрагмента 1 передать число 999 и получить его в фрагменте 2. И мне не понятно что такое индекс и как у него что получить и передать.
0
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
20.05.2013, 00:14 #42
хотя нет, для вашей ситуации нужно просто
Java
1
2
3
Fragment1 f = new Fragment1();
int index = 999;
f.setIndex(index );
Добавлено через 57 секунд
Цитата Сообщение от Stylish2013 Посмотреть сообщение
И мне не понятно что такое индекс
ну, мне тем более, это же ваш код.
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
20.05.2013, 00:18 #43
Цитата Сообщение от V0v1k Посмотреть сообщение
Fragment1 f = new Fragment1();
int index = 999;
f.setIndex(index );
подчёркивает SetIndex и пишет The method setIndex(int) from the type Fragment is not visible

и как потом принять?
0
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
20.05.2013, 00:21 #44
создайте метод setIndex, вот он и принимает.
0
Stylish2013
7 / 7 / 1
Регистрация: 20.04.2013
Сообщений: 666
20.05.2013, 00:26 #45
Цитата Сообщение от V0v1k Посмотреть сообщение
создайте метод setIndex, вот он и принимает.
Не помогает.

А можно написать конкретно что куда вписать. А то я уже долго пытаюсь, но ничего не получается..? задачу вы знаете: мне нужно по нажатию кнопки из фрагмента 1 передать число 999 и получить его в фрагменте 2.
0
20.05.2013, 00:26
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2013, 00:26
Привет! Вот еще темы с ответами:

Про DPI экранов - Программирование Android
Как быть, я сделал текстовое приложение без графики, а на различных девайсах разный DPI и на одних слишком крупный текст где DPI 240, а где...

Dimens для разных экранов - Программирование Android
Я хочу сделать для разных экранов разный размер шрифта. Как бы мне это сделать? Я создал папку values-sw480dp-hdpi для экрана HTC One V(на...

Поддержка нескольких типов экранов - Программирование Android
Добрый вечер. В программировании для android я совсем недавно. Возникла проблема с поддержкой нескольких типов экранов. Вот по такому...

Разметка для разных экранов - Программирование Android
У меня такой вопрос как сделать разметку для разных размеров экранов наиболее оптимально. Ну если в проекте создавать кучу папок и...


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

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

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