Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.66/99: Рейтинг темы: голосов - 99, средняя оценка - 4.66
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
1

Перелистывание экранов

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

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

Анимация перелистывание
Доброго времени суток! Кто знает? Как сделать так чтобы перелистывание...

Создание экранов
Только начал изучать Android да и Java тоже. Хочу узнать, как сделать несколько...

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

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

TabHost и переключение экранов
Доброго времени суток и с Днём Программиста!=) У меня возникла ситуация......

96
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
15.05.2013, 23:27  [ТС] 21
будьте добры примерчик..
как этот инстанс получить
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
15.05.2013, 23:34 22
Java
1
new Registration_Fragment1(Registration_Activity.this);
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
15.05.2013, 23:50  [ТС] 23
Java
1
2
3
4
5
6
7
public class Registration_Fragment1 extends Fragment {  
    
    private Context parent;
    Registration_Fragment1(Context par) {
        parent = par;
    }
}
а он говорит, этот фрагмент должен сопровождаться предустановленным конструктором, без аргументов

и тип неверный,наверно
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
15.05.2013, 23:56 24
кто говорит?
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
15.05.2013, 23:58  [ТС] 25
компилятор, ктож еще
0
Миниатюры
Перелистывание экранов  
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
16.05.2013, 00:07 26
у вас импорт контекста отсутствует.

Добавлено через 3 минуты
да и вроде эта надпись не к этому участку кода.

Добавлено через 23 секунды
наводите курсор н ошибку в коде чтобы увидеть описание.
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
16.05.2013, 00:09  [ТС] 27
это да
а тип верный ? Registration_Activity.this возвращает Context ?

импорт добавил, но всеравно конструктор менять не хочет
а если задавать метод, то его не видно из Main_Activity...

Добавлено через 1 минуту
Цитата Сообщение от V0v1k Посмотреть сообщение
да и вроде эта надпись не к этому участку кода.
к этому
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
16.05.2013, 00:11  [ТС] 28
вернее он хочет чтобы конструктор чего-то возвращал
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
16.05.2013, 00:17  [ТС] 29
ну вот, 2 ошибки
избежать неопределенного конструкотра
0
Миниатюры
Перелистывание экранов  
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
16.05.2013, 00:24 30
я вспомнил что можно просто использовать метод getActivity() в фрагменте.
1
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
16.05.2013, 00:37  [ТС] 31
как теперь использовать методы..?
0
V0v1k
1160 / 984 / 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
86 / 86 / 13
Регистрация: 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
86 / 86 / 13
Регистрация: 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
1160 / 984 / 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
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
20.05.2013, 00:08 40
туда, где вам нужно передать индекс.
0
20.05.2013, 00:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2013, 00:08

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

Размеры экранов планшетов
Всем привет. Вот какая штука. У гуглов в доках сказано что если в папочку...

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


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

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

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