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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
#1

Обращение к View элементам фрагмента - Android

25.06.2015, 15:19. Просмотров 1484. Ответов 20
Метки нет (Все метки)

Добрый день. Нужна помощь, уже не знаю что делать.
Имеется три идентичных фрагмента с одним TextView (id = textview1).
Имеется Activity, в которой расположен ViewPager. В ViewPager добавляю эти фрагменты.
По созданию Activity и в процессе работы (каждые скажем 10 сек) требуется обновлять интерфейс фрагментов.

Суть проблемы - не могу обратиться к View элементам фрагментов. Текст который я привожу ошибок не выдает, но и результата нет

Код MainActivity
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
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package com.slide;
 
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.PagerTabStrip;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
 
public class MainActivity extends FragmentActivity {
    
    ViewPager pager;
    PagerAdapter pagerAdapter;
    private ViewPager mViewPager;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        mViewPager = (ViewPager) findViewById(R.id.pager);
        PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.pagerTabStrip);
        pagerTabStrip.setDrawFullUnderline(true);
        
        TitleAdapter titleAdapter = new TitleAdapter(getSupportFragmentManager());
        mViewPager.setAdapter(titleAdapter);
        mViewPager.setCurrentItem(0);
        
        
        LayoutInflater inflater = LayoutInflater.from(this);
        View page = inflater.inflate(R.layout.about, null);
        TextView textView = (TextView) page.findViewById(R.id.textView1);
        textView.setText("TEST!!!");
 
    }
    
    public class TitleAdapter extends FragmentPagerAdapter {
        private final String titles[] = getResources().getStringArray(R.array.data); 
        
        private final Fragment frags[] = new Fragment[titles.length];
     
        public TitleAdapter(FragmentManager fm) {
            super(fm);
            frags[0] = new FragmentView1();
            frags[1] = new FragmentView2();
            frags[2] = new FragmentView3();
        }
     
        @Override
        public CharSequence getPageTitle(int position) {
            return titles[position];
        }
     
        @Override
        public Fragment getItem(int position) {
            return frags[position];
        }
     
        @Override
        public int getCount() {
            return frags.length;
        }
    }
 
}
Код FragmentView1
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package com.slide;
 
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
 
public class FragmentView1 extends Fragment {   
    
    public View myView;
    
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {     
        
        myView = inflater.inflate(R.layout.about, container, false);
        
      
        return myView;
    }
    
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Spelcrawler
525 / 495 / 111
Регистрация: 12.03.2014
Сообщений: 1,647
Завершенные тесты: 1
25.06.2015, 16:13     Обращение к View элементам фрагмента #2
Java
1
2
3
4
5
6
7
8
9
10
//Под public View myView;
private TextView textView;
//В onCreateView в фрагменте;
textView = myView.findViewById(R.id.textview1);
//Метод для смены текста.
public void setText(String text){
    textView.setText(text);
}
//Вызов метода в любом месте где доступен фрагмент.
fragment.setText("text");
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,723
25.06.2015, 17:27     Обращение к View элементам фрагмента #3
Dawidze, здравствуй. Мне лень изучать код. Возможно, там нет события перелистывания фрагментов, соответственно, вы не можете определить, к какому фрагменту обращаетесь. Поизучайте, в Интернете много примеров.
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
26.06.2015, 09:34  [ТС]     Обращение к View элементам фрагмента #4
Spelcrawler, CoolMind, Спасибо за советы. Попробовал так сделать, но ничего не выходит.\
Как я понял FragmentView1 это класс, а переменная этого класса находятся в titleadapter.

Пытаюсь выцеплять этот объект но программа крошится

Java
1
((FragmentView1) titleAdapter.frags[0]).SetText("dg");
Java
1
((FragmentView1)titleAdapter.getItem(0)).SetText("text");
Даже если я создаю новый объект то все равно приложение останавливается
Java
1
2
FragmentView1 f = new FragmentView1();
f.SetText("text");
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,723
26.06.2015, 09:51     Обращение к View элементам фрагмента #5
Dawidze, честно говоря, в последнее время совсем лень стало читать и исправлять код, который содержит ошибки. Поэтому лучше поправьте их сами. Для начала поглядите примеры на http://startandroid.ru/ru/uroki/vse-...viewpager.html и http://habrahabr.ru/post/131889/. В первой ссылке обратите внимание на setOnPageChangeListener.

Добавлено через 1 минуту
Цитата Сообщение от Dawidze Посмотреть сообщение
((FragmentView1) titleAdapter.frags[0])
Такой способ некрасив и может содержать ошибки. Вы можете проверить через Debug или анализируя LogCat, не здесь ли падает программа.
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 651
26.06.2015, 12:35     Обращение к View элементам фрагмента #6
Dawidze, может так попробуй:
Java
1
((TextView) ((FragmentView1) titleAdapter.frags[0]).myView.findViewByIn(R.id.textview1)).setText("My text");
или во фрагменте сделай метод setText(String str);

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class FragmentView1 extends Fragment {   
    
    public View myView;
    
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {     
        myView = inflater.inflate(R.layout.about, container, false);
        return myView;
    }
    
    public void setText(String str) {
    TextView textview = (TextView) myView.findViewById(R.id.textview1);
    textview.setText(str);
    }
}
и потом вызывай этот метод :

Java
1
((FragmentView1) titleAdapter.frags[0]).setText("dg");
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
26.06.2015, 13:27  [ТС]     Обращение к View элементам фрагмента #7
Mikalai, увы такие методы тоже крушат все напрочь.
Кажется в этой задаче надо идти другим путем, например по советуCoolMind

Я около двух недель копаюсь в интернете чтобы решить эту проблему, но не находил ни одного примера в котором работали бы с элементами

Добавлено через 3 минуты
CoolMind, обратился я к http://startandroid.ru/ru/uroki/vse-...viewpager.html. в методах OnPageChangeListener подходит разве что onPageSelected, но он возвращает только номер страницы, и то когда листаешь экран. Я не понял как оттуда вытянуть фрагмент(
Паблито
2236 / 1809 / 563
Регистрация: 12.05.2014
Сообщений: 6,448
Завершенные тесты: 1
26.06.2015, 13:31     Обращение к View элементам фрагмента #8
Цитата Сообщение от Dawidze Посмотреть сообщение
((FragmentView1) titleAdapter.frags[0]).SetText("dg");
setText с большой буквы - это ошибка перепечатки руками или ТС настолько эээ новичек что запускает программу даже не глядя в окно ide, которое пестрит красными пометками?
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
26.06.2015, 13:48  [ТС]     Обращение к View элементам фрагмента #9
Паблито, нет, программа то запускается, красным ничего не подчеркивает, это у меня под контролем)

Добавлено через 4 минуты
я просто создал изначально метод SetText
Паблито
2236 / 1809 / 563
Регистрация: 12.05.2014
Сообщений: 6,448
Завершенные тесты: 1
26.06.2015, 13:55     Обращение к View элементам фрагмента #10
Цитата Сообщение от Dawidze Посмотреть сообщение
Суть проблемы - не могу обратиться к View элементам фрагментов.
я вообще считаю что так делать неправильно
правильно делать так - в классе фрагмента делаются методы, через которые будет идти управление

Например внутри фрагмента есть 2 TextView в которых надо что-то обновлять. Можно сделать что-то типа метода в классе фрагмента void updateTextLabels(String param1, String param2);
и в этот метод передавать текст для вьюшек, а фрагмент сам уже пусть хранит ссылки на эти вьюшки и меняет им текст
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
26.06.2015, 13:58  [ТС]     Обращение к View элементам фрагмента #11
Цитата Сообщение от Spelcrawler Посмотреть сообщение
//Под public View myView;
private TextView textView;
//В onCreateView в фрагменте;
textView = myView.findViewById(R.id.textview1);
//Метод для смены текста.
public void setText(String text){
* * textView.setText(text);
}
//Вызов метода в любом месте где доступен фрагмент.
fragment.setText("text");
Вот мне советовали так уже, только не получается обратиться к элементу класса FragmentView1
Паблито
2236 / 1809 / 563
Регистрация: 12.05.2014
Сообщений: 6,448
Завершенные тесты: 1
26.06.2015, 14:01     Обращение к View элементам фрагмента #12
ну ты когда фрагменты добавляешь в ViewPager то и запоминай ссылки на них, какие проблемы?

я заставил себя вчитаться в код в первом сообщении, короче, покажи последнюю версию кода активити и фрагмента
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
26.06.2015, 14:12  [ТС]     Обращение к View элементам фрагмента #13
Паблито, вот попробовал создать один фрагмент вручную и сохранить его

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
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
package com.slide;
 
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.PagerTabStrip;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.util.Log;
import android.widget.TextView;
 
public class MainActivity extends FragmentActivity {
    
    ViewPager pager;
    PagerAdapter pagerAdapter;
    private ViewPager mViewPager;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        mViewPager = (ViewPager) findViewById(R.id.pager);
        PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.pagerTabStrip);
        pagerTabStrip.setDrawFullUnderline(true);
        
        FragmentView1 f = new FragmentView1();
        TitleAdapter titleAdapter = new TitleAdapter(getSupportFragmentManager(), f);
        mViewPager.setAdapter(titleAdapter);
        mViewPager.setCurrentItem(0);
        
        //((TextView)((FragmentView1)titleAdapter.frags[0]).myView.findViewById(R.id.textView1)).setText("dgdfg");
        f.SetText("qqq");
        //((FragmentView1)titleAdapter.frags[0]).SetText("dg"); 
        
    }
    
    public class TitleAdapter extends FragmentPagerAdapter {
        private final String titles[] = getResources().getStringArray(R.array.data); 
        
        private final Fragment frags[] = new Fragment[titles.length];
     
        public TitleAdapter(FragmentManager fm, FragmentView1 f) {
            super(fm);
            frags[0] = f;
            frags[1] = new FragmentView2();
            frags[2] = new FragmentView3();
        }
     
        @Override
        public CharSequence getPageTitle(int position) {
            return titles[position];
        }
     
        @Override
        public Fragment getItem(int position) {
            return frags[position];
        }
     
        @Override
        public int getCount() {
            return frags.length;
        }
    }
 
}
в конструктор titleAdapter передаю фрагмент вручную.
и так тоже все падает. Если я комментю f.SetText("qqq"); то работает программа
Паблито
2236 / 1809 / 563
Регистрация: 12.05.2014
Сообщений: 6,448
Завершенные тесты: 1
26.06.2015, 14:27     Обращение к View элементам фрагмента #14
Цитата Сообщение от Dawidze Посмотреть сообщение
и так тоже все падает
весь лог ошибки показывай
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
26.06.2015, 14:43  [ТС]     Обращение к View элементам фрагмента #15
CoolMind,
Цитата Сообщение от CoolMind Посмотреть сообщение
Добавлено через 1 минуту
Сообщение от Dawidze
((FragmentView1) titleAdapter.frags[0])
Такой способ некрасив и может содержать ошибки. Вы можете проверить через Debug или анализируя LogCat, не здесь ли падает программа.
вот попробовал обойти это, изменив конструктор TitleAdapter, но все равно увы(
Java
1
2
3
4
5
6
7
        FragmentView1 f = new FragmentView1();
        TitleAdapter titleAdapter = new TitleAdapter(getSupportFragmentManager(), f);
        mViewPager.setAdapter(titleAdapter);
        mViewPager.setCurrentItem(0);
        
        //((TextView)((FragmentView1)titleAdapter.frags[0]).myView.findViewById(R.id.textView1)).setText("dgdfg");
        f.SetText("qqq");
Добавлено через 9 минут
Description Resource Path Location Type
Avoid passing null as the view root (needed to resolve layout parameters on the inflated layout's root element) MainActivity.java /qwerty/src/com/example/work/qwerty line 27 Android Lint Problem
Avoid passing null as the view root (needed to resolve layout parameters on the inflated layout's root element) MainActivity.java /qwerty/src/com/example/work/qwerty line 32 Android Lint Problem
Avoid passing null as the view root (needed to resolve layout parameters on the inflated layout's root element) PageFragment.java /Slide/src/com/slide line 52 Android Lint Problem
Buttons in button bars should be borderless; use style="?android:attr/buttonBarButtonStyle" (and ?android:attr/buttonBarStyle on the parent) activity_main.xml /CleverHome/res/layout line 27 Android Lint Problem
Buttons in button bars should be borderless; use style="?android:attr/buttonBarButtonStyle" (and ?android:attr/buttonBarStyle on the parent) activity_main.xml /CleverHome/res/layout line 37 Android Lint Problem
Buttons in button bars should be borderless; use style="?android:attr/buttonBarButtonStyle" (and ?android:attr/buttonBarStyle on the parent) activity_main.xml /CleverHome/res/layout line 57 Android Lint Problem
Buttons in button bars should be borderless; use style="?android:attr/buttonBarButtonStyle" (and ?android:attr/buttonBarStyle on the parent) activity_main.xml /CleverHome/res/layout line 67 Android Lint Problem
Not targeting the latest versions of Android; compatibility modes apply. Consider testing and updating this version. Consult the android.os.Build.VERSION_CODES javadoc for details. AndroidManifest.xml /iHome line 9 Android Lint Problem
The import android.graphics.Color is never used CleverHome.java /iHome/src/com/work/develop/ihome line 14 Java Problem
The import android.widget.Button is never used CleverHome.java /iHome/src/com/work/develop/ihome line 18 Java Problem
The method rotateColor(int, float) from the type ColorPickerDialog.ColorPickerView is never used locally ColorPickerDialog.java /iHome/src/com/work/develop/ihome line 127 Java Problem
The value of the field FragmentView1.textview is not used FragmentView1.java /Slide/src/com/slide line 13 Java Problem
This TextView should use android:layout_height="wrap_content" about.xml /Slide/res/layout line 11 Android Lint Problem

Добавлено через 2 минуты
Перелистывание экранов
вот из этой темы из поста 6 я взял пример, и на нем пытаюсь сделать
Паблито
2236 / 1809 / 563
Регистрация: 12.05.2014
Сообщений: 6,448
Завершенные тесты: 1
26.06.2015, 14:47     Обращение к View элементам фрагмента #16
судя по тексту у тебя программа даже запускаться не должна, но ты утверждаешь что она запускается, но падает
как это понимать?
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
26.06.2015, 15:14  [ТС]     Обращение к View элементам фрагмента #17
Паблито, на компьютере ничто не ругается при запуске, а на телефоне появляется сообщение slide остановлена

Добавлено через 22 минуты
А в чем проблема, там ошибки не критические, а так, подсказки
Паблито
2236 / 1809 / 563
Регистрация: 12.05.2014
Сообщений: 6,448
Завершенные тесты: 1
26.06.2015, 16:14     Обращение к View элементам фрагмента #18
Цитата Сообщение от Паблито Посмотреть сообщение
весь лог ошибки показывай
может проблема в этом?
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,723
26.06.2015, 17:32     Обращение к View элементам фрагмента #19
Цитата Сообщение от Dawidze Посмотреть сообщение
в методах OnPageChangeListener подходит разве что onPageSelected, но он возвращает только номер страницы, и то когда листаешь экран. Я не понял как оттуда вытянуть фрагмент(
Я уже не помню, у меня использовалась связка TabHost + ViewPager, но можно и без TabHost. Примерно так, поправьте там сами используемые методы и названия классов.
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
26
27
final ViewPager viewPager = (ViewPager) findViewById(R.id.viewPager);
                        PagerAdapter pagerAdapter = new CustomFragmentPagerAdapter(getSupportFragmentManager());
                        viewPager.setAdapter(pagerAdapter);
 
// ...
// viewPager.getCurrentItem() - ссылка на текущую вкладку.
// ...
 
    // Определим данные для ViewPager'а.
    private class CustomFragmentPagerAdapter extends FragmentPagerAdapter {
        public CustomFragmentPagerAdapter(FragmentManager fm) {
            super(fm);
        }
 
        @Override
        public Fragment getItem(int position) {
            if (position == 0)
                return Fragment1.newInstance();
            else
                return Fragment2.newInstance();
        }
 
        @Override
        public int getCount() {
            return 2;
        }
    }
В общем, не помню уже.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.07.2015, 08:50     Обращение к View элементам фрагмента
Еще ссылки по теме:

Android В чем разница (View view) и (View v)
Public void onClick(View view) Android
Android Открытие фрагмента NawDrawer
Обращение к элементам фрагмента из активити Android
Android Повторное создание фрагмента внутри фрагмента ViewPager

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

Или воспользуйтесь поиском по форуму:
Dawidze
4 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 10
01.07.2015, 08:50  [ТС]     Обращение к View элементам фрагмента #20
Разобрался я с задачей!!!

И этот вариант рабочий
Цитата Сообщение от Dawidze Посмотреть сообщение
((FragmentView1) titleAdapter.frags[0]).SetText("dg");
И этот
Цитата Сообщение от Spelcrawler Посмотреть сообщение
//Под public View myView;
private TextView textView;
//В onCreateView в фрагменте;
textView = myView.findViewById(R.id.textview1);
//Метод для смены текста.
public void setText(String text){
textView.setText(text);
}
//Вызов метода в любом месте где доступен фрагмент.
fragment.setText("text");
Проблема была в том что я пытался обратиться к элементам фрагмента в процедуре onCreate главной Activity. Но в это время метод OnCreateView фрагмента еще не произошел, и компоненты еще не определены. Метод SetText был немного изменен, добавлена проверка на то, что метод OnCreateView уже сработал

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
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.slide;
 
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
 
public class FragmentView1 extends Fragment {   
    
    public View myView;
    private TextView textview;
    private boolean cr;
    
    @Override
      public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        cr = false;
        
      }
    
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        
        myView = inflater.inflate(R.layout.about, container, false);
        textview = (TextView) myView.findViewById(R.id.textView1);
        cr = true;
        return myView;
    }
 
    public void SetText(String text){
        if (cr) {
            textview.setText(text);
        }
    }
}
Теперь метод SetText будет работать не круша программу, но только не из onCreate MainActivity

Добавлено через 2 минуты
MainActivity

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
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
package com.slide;
 
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
 
public class MainActivity extends FragmentActivity {
    
    ViewPager pager;
    PagerAdapter pagerAdapter;
    private ViewPager mViewPager;
    static final int PAGE_COUNT = 10;
    static final String TAG = "myLogs";
    FragmentView1 f1;
    FragmentView2 f2;
    FragmentView3 f3;
    
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        mViewPager = (ViewPager) findViewById(R.id.pager);        
        
        f1 = new FragmentView1();
        f2 = new FragmentView2();
        f3 = new FragmentView3();
        final TitleAdapter titleAdapter = new TitleAdapter(getSupportFragmentManager(), f1, f2, f3);
        mViewPager.setAdapter(titleAdapter);
        mViewPager.setCurrentItem(0);
       
        Button b = (Button) findViewById(R.id.button1);
        b.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                ((FragmentView1)titleAdapter.frags[0]).SetText("dfgfg");
                //f1.SetText("dfdf");
            }
        });
        f1.SetText("dfdf");
 
    }
 
    public class TitleAdapter extends FragmentPagerAdapter {
        private final String titles[] = getResources().getStringArray(R.array.data); 
        
        public final Fragment frags[] = new Fragment[titles.length];
     
        public TitleAdapter(FragmentManager fm, FragmentView1 f1, FragmentView2 f2, FragmentView3 f3) {
            super(fm);
            frags[0] = f1;
            frags[1] = f2;
            frags[2] = f3;
        }
     
        @Override
        public CharSequence getPageTitle(int position) {
            return titles[position];
        }
     
        @Override
        public Fragment getItem(int position) {
            return frags[position];
        }
     
        @Override
        public int getCount() {
            return frags.length;
        }
    }
 
}
Yandex
Объявления
01.07.2015, 08:50     Обращение к View элементам фрагмента
Ответ Создать тему
Опции темы

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