Neu
ich versuche seid längerem geeignete Tutorials oder ähnliches zu finden, leider ohne Erfolg.
Mein Problem: Ich habe eine App geschrieben, diese hat eine MainActivity und drei Fragmente. Diese werden mit dem ViewPager2 und eine TabLayout unter Verwendung des TabLayoutMediator's angezeigt. Nun will ich diesen Fragmenten Daten von der MainActivity mit geben und später auch die eingegebenen Daten in den Fragmenten auslesen um diese in einer Speichern-Funktion der MainActivity in der Datenbank zu speichern.
MainActivity ( Call_Tabs_Add_Acitivity.java )
Java-Quellcode: MainActivitiy ( Call_Tabs_Add_Acitivity.java )
- public class Call_Tabs_Add_Activity extends AppCompatActivity {
- private TabLayout call_tabLayout;
- private TabLayoutMediator call_tabMediator;
- private TabItem call_tabCallOverview, call_tabUnitOverview, call_tabVehicleOverview;
- private ViewPager2 call_viewPager;
- private PageAdapterAdd pageAdapterAdd;
- public static final int TAB_UEBERSICHT = 0, TAB_EINHEITEN = 1, TAB_FAHRZEUGE = 2;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_call_tabs);
- getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_close);
- setTitle("");
- call_tabCallOverview = findViewById(R.id.call_tabCallOverview);
- call_tabUnitOverview = findViewById(R.id.call_tabUnitOverview);
- call_tabVehicleOverview = findViewById(R.id.call_tabVehicleOverview);
- call_viewPager = findViewById(R.id.call_viewPager);
- pageAdapterAdd = new PageAdapterAdd(this);
- call_viewPager.setAdapter(pageAdapterAdd);
- call_tabLayout = findViewById(R.id.call_tabLayout);
- call_tabMediator = new TabLayoutMediator(call_tabLayout, call_viewPager, new TabLayoutMediator.TabConfigurationStrategy() {
- @Override
- public void onConfigureTab(@NonNull TabLayout.Tab tab, int position) {
- switch (position){
- case TAB_UEBERSICHT: {
- tab.setText(R.string.call_tabCallOverview);
- tab.setIcon(R.drawable.ic_tabcalloverview);
- break;
- }
- case TAB_EINHEITEN: {
- break;
- }
- case TAB_FAHRZEUGE: {
- break;
- }
- }
- }
- });
- call_tabMediator.attach();
- call_viewPager.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
- @Override
- public void onPageSelected(int position) {
- super.onPageSelected(position);
- BadgeDrawable badgeDrawable = call_tabLayout.getTabAt(position).getOrCreateBadge();
- switch (position){
- case TAB_UEBERSICHT: {
- break;
- }
- case TAB_EINHEITEN: {
- badgeDrawable.setNumber(88);
- break;
- }
- case TAB_FAHRZEUGE: {
- badgeDrawable.setNumber(69);
- break;
- }
- }
- }
- });
- }
Fragment1 ( Call_Fragment_Overview.java )
Java-Quellcode: Fragment1 ( Call_Fragment_Overview.java )
- public class Call_Fragment_Overview extends Fragment implements View.OnClickListener{
- private EditText addDateStart, addTimeStart, addDateEnd, addTimeEnd, addCallPlace, addCallChief, addCallSaftyEquipment;
- private Switch switchAgt, switchDekon;
- private View view;
- public Call_Fragment_Overview() {
- // Required empty public constructor
- }
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- view = inflater.inflate(R.layout.call_fragment_overview_add, container, false);
- addDateStart = view.findViewById(R.id.add_date_start);
- addDateStart.setOnClickListener(this);
- addTimeStart = view.findViewById(R.id.add_time_start);
- addTimeStart.setOnClickListener(this);
- return view;
- }
PageAdapter ( PageAdapterAdd.java )
Quellcode: PageAdapter ( PageAdapterAdd.java )
- public class PageAdapterAdd extends FragmentStateAdapter {
- public PageAdapterAdd(@NonNull FragmentActivity fragmentActivity) {
- super(fragmentActivity);
- }
- @NonNull
- @Override
- public Fragment createFragment(int position) {
- switch (position){
- case 0:
- Fragment call_Fragment_Overview = new Call_Fragment_Overview();
- return call_Fragment_Overview;
- case 1:
- return ;
- case 2:
- return ;
- default:
- return null;
- }
- }
- @Override
- public int getItemCount() {
- return 3;
- }
- }
Solltest du bis hier hin gekommen sein, schon mal vielen Dank fürs Durchlesen und deine Zeit!

P.s. sollte etwas an Infos fehlen, gerne drauf Aufmerksam machen!