java - una - pagina de inicio chrome
Inicio del fragmento de la segunda pestaña de la primera actividad de la segunda actividad (1)
Puede llamar a getActivity().getIntent().getExtras()
para obtener un Bundle
de extras que configure en otra actividad.
Soy nuevo en Android y estoy atrapado en una sección particular de la aplicación en la que estoy trabajando. El problema es: quiero navegar a la segunda pestaña de HomePageActivity cuando realizo el evento ClickClistener en el botón createEvent en mi SecondActivity . Traté de usar la solución de varios subprocesos aquí y en otros sitios también, pero todavía no pude ejecutar mi código.
También tengo RecyclerView en HomePageActivity que se completará en función del evento click.
Aquí está el fragmento de código de ambas actividades:
HomePageActivity.java - Actividad de pestañas
public class HomePageActivity extends AppCompatActivity
{
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home_page);
fragmentInfo = getIntent().getExtras();
if (fragmentInfo != null)
{
tabNumber = fragmentInfo.getInt("tabNumber");
}
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
mViewPager = (ViewPager) findViewById(R.id.container);
mViewPager.setAdapter(mSectionsPagerAdapter);
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(mViewPager);
}
public class SectionsPagerAdapter extends android.support.v4.app.FragmentPagerAdapter
{
String[] tabList = {"Communities", "Events", "People"};
public SectionsPagerAdapter(android.support.v4.app.FragmentManager fm)
{
super(fm);
}
@Override
public android.support.v4.app.Fragment getItem(int position)
{
return PlaceholderFragment.newInstance(position + 1);
}
@Override
public int getCount()
{
return tabList.length;
}
@Override
public CharSequence getPageTitle(int position)
{
return tabList[position];
}
}
public static class PlaceholderFragment extends android.support.v4.app.Fragment
{
private static final String ARG_SECTION_NUMBER = "section_number";
public static PlaceholderFragment newInstance(int sectionNumber)
{
PlaceholderFragment fragment = new PlaceholderFragment();
Bundle args = new Bundle();
args.putInt(ARG_SECTION_NUMBER, sectionNumber);
fragment.setArguments(args);
return fragment;
}
public PlaceholderFragment()
{
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
int viewNumber = getArguments().getInt(ARG_SECTION_NUMBER);
final String[] eventsListArray = {"Event1", "Event2"};
if (viewNumber == 1)
{
View rootView = inflater.inflate(R.layout.fragment_communities, container, false);
TextView textView = (TextView) rootView.findViewById(R.id.communitieslabel);
textView.setText("communities");
return rootView;
}
else if (viewNumber == 2)
{
View rootView = inflater.inflate(R.layout.fragment_events, container, false);
eventsList = (RecyclerView) rootView.findViewById(R.id.recyclerViewEvents);
fab = (FloatingActionButton) rootView.findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view)
{
Intent intent = new Intent(getActivity().getBaseContext(), CreateEvents.class);
startActivity(intent);
}
});
eventsList.setHasFixedSize(true);
mLayoutManager = new LinearLayoutManager(getActivity());
eventsList.setLayoutManager(mLayoutManager);
eventsListAdapter = new RecyclerEventsAdapter(getActivity(), eventListInfo);
eventsList.setAdapter(eventsListAdapter);
return rootView;
}
else
{
View rootView = inflater.inflate(R.layout.fragment_peopleprofile, container, false);
TextView textView = (TextView) rootView.findViewById(R.id.peoplelabel);
textView.setText("people");
return rootView;
}
}
}
}
Y el código de SecondActivity -
buttonCreateEvent.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
String[] eventInfo = new String[0];
getEventName = editTextEventName.getText().toString();
getEventDetail = editTextEventDetails.getText().toString();
getEventLocation = editTextEventLocation.getText().toString();
while (!getEventName.equals("") && !getEventDetail.equals("") && !getEventLocation.equals("") && !getEventDate.equals(""))
{
eventInfo = new String[]{getEventName, getEventDetail, getEventLocation, getEventDate};
}
Intent intent = new Intent(CreateEvents.this, HomePageActivity.class);
intent.putExtra("tabNumber", 2);
intent.putExtra("openEventFragment", eventInfo);
startActivity(intent);
}
});
Cualquier ayuda es apreciada. Gracias de antemano.