Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Radzhab
12 / 12 / 1
Регистрация: 18.06.2011
Сообщений: 413
1

Как передать данные в определенный инстанс класса?

27.06.2015, 11:10. Просмотров 283. Ответов 1
Метки нет (Все метки)

Проект который я использую https://github.com/chrisbanes/cheesesquare.
Я создаю четыре экземпляра класса CheeseListFragment. Я не могу понять, как получить доступ к конкретно третьему экземпляру класса и передать данные? В частности, в третьем


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
83
84
85
public class MainActivity extends AppCompatActivity implements CheeseListFragment.OnDataPass {
     Adapter adapter;
 
...
      adapter = new Adapter(getSupportFragmentManager());
 
            for (int i=0; i<4; i++){
                adapter.addFragment(new CheeseListFragment(), items[i]);
            }
...
 
 viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
            }
 
            @Override
            public void onPageSelected(int position) {
                onDataPass(String.valueOf(position)); // Хочу отправить данные в третий инстанс CheeseListFragment 
 
 
 
 
 
     static class Adapter extends FragmentPagerAdapter {
        private final List<Fragment> mFragments = new ArrayList<>();
        private final List<String> mFragmentTitles = new ArrayList<>();
 
 
 
        public Adapter(FragmentManager fm) {
            super(fm);
        }
 
        public void addFragment(Fragment fragment, String title) {
            mFragments.add(fragment);
            mFragmentTitles.add(title);
        }
 
        @Override
        public Fragment getItem(int position) {
 
 
            return mFragments.get(position);
        }
 
        @Override
        public int getCount() {
            return mFragments.size();
        }
 
        @Override
        public CharSequence getPageTitle(int position) {
            return mFragmentTitles.get(position);
        }
    }
}
 
 
 
 
public class CheeseListFragment extends Fragment {
 
    List<News> lnews;
    private RecyclerViewAdapter mRecyclerviewAdapter;
    OnDataPass dataPasser;
 
...
    protected String[] mDataset;
 
 
 
    public interface OnDataPass {
        public void onDataPass(String data);
    }
 
    @Override
    public void onAttach(Activity a) {
        super.onAttach(a);
        dataPasser = (OnDataPass) a;
 
    }
    public void passData(String data) 
        dataPasser.onDataPass(data);
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2015, 11:10
Ответы с готовыми решениями:

Как передать данные в Activity из другого класса
При нажатии на кнопку, создается активити orgAdapter = new OrgAdapter(this,...

Выполнение метода интерфейса через инстанс класса
Добрый день. Есть такой вопрос. Допустим у меня есть интерфейс: ...

Как передать параметры из одного класса в другой?
Есть класс Phase, в нем метод: public static double phase(double pdate,...

Как передать данные в thread?
Доброго всем дня) Прошу совета. Есть активити. Она запускает сервис,в котором...

Как передать данные в EditText
Есть активность из которой необходимо передать данные в активити планировщика...

1
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
27.06.2015, 13:37 2
Radzhab, лучше так не делать т.к. этого фрагмента, который вы ищете, на данный момент может не быть вообще. Просто сохраните данные для него где нибудь и при запуске этого фрагмента прочитайте их.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2015, 13:37

Как передать данные из Fragments в DialogFragment
Пробовал с помощью Intent , Bundle , но не получалось (либо руки кривые) ....

Как передать intent данные в Service?
Здравствуйте! как передать intent данные в класс с расширением Service?...

Как поучить/передать данные в/из BroadcastReceiver ?
Например, есть BroadcastReceiver и есть Сервис. BroadcastReceiver получает...


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

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

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