Quiero iniciar un nuevo fragmento para ver algunos datos. Actualmente, tengo una actividad principal que tiene varias pestañas de la barra de acciones, cada una de las cuales es un fragmento. Entonces, dentro de un fragmento de pestaña, tengo un botón, chartsButton. Tengo mi OnClickListener todo listo para ello, y aquí está el método onClick:Comience un fragmento a través de la intención dentro de un fragmento
public OnClickListener chartsListener = new OnClickListener() {
@Override
public void onClick(View v) {
Intent chartFragment = new Intent();
startActivity(chartFragment);
}
};
Ahora bien, como ya he dicho, este detector está dentro de una clase que se extiende Fragmento. Entonces, quiero lanzar un nuevo fragmento (chartsFragment) con la intención de reemplazar toda la pantalla. Cuando el usuario haga clic atrás, los devolverá a las pestañas y a la actividad principal. Aquí está mi fragmento de la carta:
public class chartsFragment extends Fragment {
public View onCreateView() {
//LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState
LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
return (inflater.inflate(R.layout.chartfragment, null));
}
}
El error actual que estoy tratando con: "android.content.ActivityNotFoundException: no hemos encontrado actividad de manejar Intención {}". Está bien, entiendo que podría usar getActivity(). StartActivity (chartsFragment), pero eso da como resultado el mismo error. Supongo que lo que estoy buscando aquí es cómo lanzar un intento desde dentro de un fragmento que da como resultado la apertura de un nuevo fragmento.
Esto funcionó a la perfección. Acabo de crear una nueva clase llamada Chart, hice que extendiera Activity, lo coloqué en el Manifest y lo cargué con el diseño xml que tenía pensado para un fragmento. La funcionalidad de respaldo funciona como yo también quería. ¡Muchas gracias! – Davek804
@ Davek804 puede actualizar el código con la solución –
@ Davek804 ¿Puede explicarlo con un diagrama o código? – DroidLearner