Hallo
Wie ich gesehen habe warst du wieder Online. Deshalb nun auch eine Antwort von mir. Leider ist es oft so man gibt sich mühe eine Antwort zu schreiben und der TE schaut nicht mal nach, geht gar nicht online.
Das Ganze ist eine Eigenart des ViewPager den du verwendest.
Mit Hilfe des ViewPager ist es ja möglich auch zwischen den Taps zu Swipen.
Damit das möglich ist werden immer die Nachbar Fragmente schon in den Speicher vorgeladen.
Du schreibst du hast drei Fragmente, hast du denn auch drei Klassen? Ich denke du hast nur die eine „Tab1Fragment“ oder hast du in den anderen Klassen das gleiche Log?
Da immer das Nachbar Fragment schon vorgeladen wird, die onCreateView auch drei mal gestartet.
Eigentlich hat man drei Klassen. Dazu musst du aber auch den Adapter etwas bearbeiten und bestimmt auch dein Layout. Dann würde von jeder Kasse die onCreateView aufgerufen werden wenn ein Swipe erflogt. Beim ersten Start natürlich alle drei. Dann immer die Nachbarn. Die eigene onCrateView von dem Fragment was angezeigt wird zum Zeitpunkt des sichtbar Werdens nicht mehr aufgerufen.
Mit dem View Pager wirst du immer das Problem haben.
Damit deine Parameter also das „putin“ auch in den anderen Fragment schon beim voraus laden verfügbar ist wirst du wohl den Adapter etwas bearbeiten müssen.
Sehr interessant währe wie dein Adapter „PageAdapter“ aussieht.
Wo und wie hast du den die Tabs definiert Im Layout oder?
Aufgrund dierser drei zeilen würde ich auf im Layout tippen.
Was soll das eigentlich die Variablen die werden im Code gar nicht benutzt?
TabItem tabChats = findViewById(R.id.tabPage1);
TabItem tabStatus = findViewById(R.id.tabPage2);
TabItem tabCalls = findViewById(R.id.tabPage3);