Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MainActivity extends AppCompatActivity {
- public ApiService service;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- service = new ApiService();
- com.example.deviceiphistory.databinding.ActivityMainBinding binding = ActivityMainBinding.inflate(getLayoutInflater());
- setContentView(binding.getRoot());
- SectionsPagerAdapter sectionsPagerAdapter = new SectionsPagerAdapter(
- this, getSupportFragmentManager()
- );
- ViewPager viewPager = binding.viewPager;
- viewPager.setAdapter(sectionsPagerAdapter);
- TabLayout tabs = binding.tabs;
- tabs.setupWithViewPager(viewPager);
- }
- }
- public class SectionsPagerAdapter extends FragmentPagerAdapter {
- @StringRes
- private static final int[] TAB_TITLES = new int[]{
- R.string.tabMain, R.string.tabHistory, R.string.tabTest
- };
- private final Context context;
- public SectionsPagerAdapter(Context context, FragmentManager fm) {
- super(fm);
- this.context = context;
- }
- @NonNull
- @Override
- public Fragment getItem(int position) {
- // getItem is called to instantiate the fragment for the given page.
- // Return a PlaceholderFragment (defined as a static inner class below).
- switch (position) {
- // case 0: return MainFragment.newInstance(this.context);
- case 1: return HistoryFragment.newInstance(context);
- case 2: return TestFragment.newInstance();
- default: return MainFragment.newInstance(context);
- }
- }
- @Nullable
- @Override
- public CharSequence getPageTitle(int position) {
- return context.getResources().getString(TAB_TITLES[position]);
- }
- @Override
- public int getCount() {
- // Show 2 total pages.
- return 3;
- }
- }
- public class MainFragment extends Fragment {
- TextView actualAddressView;
- Button updateAddressButton;
- TextView lastAddressView;
- ApiService service;
- public MainFragment() {
- this.service = new ApiService();
- }
- public static MainFragment newInstance(Context context) {
- //Вот тут нужно получить ссылку на объект, чтобы его пробросить в конструктор
- ApiService service1 = context.getApplicationContext().servise;
- MainFragment fragment = new MainFragment();
- Bundle args = new Bundle();
- fragment.setArguments(args);
- return fragment;
- }
- ...
- }
Advertisement
Add Comment
Please, Sign In to add comment