i have project content login page (it have 2 Edit Text and button "login") , when i pressed "login button" it will go to another activity which is "tabbed activity" , it have 2 tap .
Now can anyone help me how to pass data from "login activity , EditText" To "each tab" ??.
My code in SelectionPagerAdapter.java :
public class SectionsPagerAdapter extends FragmentPagerAdapter {
@StringRes
private static final int[] TAB_TITLES = new int[]{R.string.tab_text_1, R.string.tab_text_2};
private final Context mContext;
public SectionsPagerAdapter(Context context, FragmentManager fm) {
super(fm);
mContext = context;
}
@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).
//return PlaceholderFragment.newInstance(position + 1);
Fragment fragment = null;
switch (position)
{
case 0:
fragment = new frag2();
Bundle bun = new Bundle();
bun.putString("NAME" , "Moaaz");
fragment.setArguments(bun);
break;
case 1:
fragment = new frag3();
Bundle bun1 = new Bundle();
bun1.putString("NAME" , "Moaaz2");
fragment.setArguments(bun1);
break;
}
return fragment;
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return mContext.getResources().getString(TAB_TITLES[position]);
}
@Override
public int getCount() {
// Show 2 total pages.
return 2;
}
}
My code in frag2.java :
public class frag2 extends Fragment {
public frag2() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view= inflater.inflate(R.layout.fragment_frag2, container, false);
TextView tes=(TextView) view.findViewById(R.id.testV1);
String strtext = getArguments().getString("NAME");
tes.setText("Name :" + strtext );
return view;
}
}
and this is login Activity :
public class register extends AppCompatActivity {
private Button singin ;
EditText name , password , email ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
name = findViewById(R.id.registerUsername);
password = findViewById(R.id.registerPw);
email = findViewById(R.id.registerEmail);
singin = findViewById(R.id.singinbtn);
singin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
goHomePage();
}
});
}
public void goHomePage(){
String nameValue = name.getText().toString();
String pwValue = password.getText().toString();
String emailValue = email.getText().toString();
Intent intent = new Intent(register.this , HomePage.class);
intent.putExtra("NAME" , nameValue);
intent.putExtra("PW" , pwValue);
intent.putExtra("EMAIL" , emailValue);
startActivity(intent);
}
}
NOTE : HomePage.java is the main class to tapped Activity .
public class HomePage extends AppCompatActivity {
String name , pw , email ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_page);
SectionsPagerAdapter sectionsPagerAdapter = new SectionsPagerAdapter(this,
getSupportFragmentManager());
ViewPager viewPager = findViewById(R.id.view_pager);
viewPager.setAdapter(sectionsPagerAdapter);
TabLayout tabs = findViewById(R.id.tabs);
tabs.setupWithViewPager(viewPager);
name = (getIntent().getStringExtra("NAME"));
pw = getIntent().getStringExtra("PW") ;
email = getIntent().getStringExtra("EMAIL") ;
Fragment frag = new frag2();
Bundle bun = new Bundle();
bun.putString("NAME" , name);
frag.setArguments(bun);
}
}
Now can anyone help me how to pass data from "login activity , EditText" To "each tap" ??.