i was working on an app where i was trying to build tab layout and insert fragments in that but in starting it was blinking and after that it was neither being clicked or being Scrolled
- Problems with the click event in a TableLayout.
package com.example.myapplication7;
import android.os.Bundle;
import android.widget.TableLayout;
import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import androidx.viewpager.widget.ViewPager;
import com.google.android.material.tabs.TabLayout;
public class MainActivity extends AppCompatActivity {
TabLayout tb;
ViewPager pager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
EdgeToEdge.enable(this);
setContentView(R.layout.activity_main);
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
tb= findViewById(R.id.tablayout);
tb.addTab(tb.newTab().setText(“Chats”));
tb.addTab(tb.newTab().setText(“Status”));
pager = findViewById(R.id.viewPager);
pager.requestTransparentRegion(pager);
fadapter ad = new fadapter(getSupportFragmentManager());
pager.setAdapter(ad);
tb.setupWithViewPager(pager);
return insets;
});
}
}
i am looking for a direct answer which will help me to sort out this problem
Amritpal Singh is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
yes a very simple way to solve it out is please insert your code
` tb= findViewById(R.id.tablayout);tb.addTab(tb.newTab().setText("Chats")); tb.addTab(tb.newTab().setText("Status")); pager = findViewById(R.id.viewPager); pager.requestTransparentRegion(pager); fadapter ad = new fadapter(getSupportFragmentManager()); pager.setAdapter(ad); tb.setupWithViewPager(pager); <code>`
this code from outside your setOnApplyWindowsListener(){}
like thispackage com.example.myapplication7;import android.os.Bundle; import android.widget.TableLayout; import androidx.activity.EdgeToEdge; import androidx.appcompat.app.AppCompatActivity; import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat;
import androidx.viewpager.widget.ViewPager;
import com.google.android.material.tabs.TabLayout;
public class MainActivity extends AppCompatActivity {
TabLayout tb;
ViewPager pager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
EdgeToEdge.enable(this);
setContentView(R.layout.activity_main);
tb= findViewById(R.id.tablayout);tb.addTab(tb.newTab().setText("Chats"));
tb.addTab(tb.newTab().setText("Status"));pager = findViewById(R.id.viewPager);
pager.requestTransparentRegion(pager);
fadapter ad = new fadapter(getSupportFragmentManager());pager.setAdapter(ad);
tb.setupWithViewPager(pager);
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v,
insets) -> {
Insets systemBars =
insets.getInsets(WindowInsetsCompat.Type.systemBars());
v.setPadding(systemBars.left, systemBars.top, systemBars.right,
systemBars.bottom);return insets;
});
}
}
Amritpal Singh is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.