Hola buen dia estoy tratando de realizar la comunicacion entre fragments y es algo con lo que me encuentro liado ya que es la primera vez que desarrollo para esta plataforma; el caso es que tengo un fragment donde cargo productos y de lado derecho tengo otro fragment donde quiero que se vaya creando un ticket con los productos seleccionados en el primer fragment. ¿Como harian eso? pongo parte de mi codigo para que se de una idea de lo que estoy haciendo.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:fitsSystemWindows="true"
android:background="#FAFAFA"
tools:context="com.salemobile.essis.magnus.MainActivity">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:id="@+id/relativeLayout">
<EditText
android:layout_width="90dp"
android:layout_height="wrap_content"
android:id="@+id/editText"
android:hint="id"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<EditText
android:layout_width="90dp"
android:layout_height="wrap_content"
android:id="@+id/editText2"
android:hint="Nombre"
android:layout_alignTop="@+id/editText"
android:layout_toRightOf="@+id/editText"
android:layout_toEndOf="@+id/editText" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/contenedor"
android:layout_width="1000dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_above="@+id/barraMenu"
android:layout_below="@+id/relativeLayout">
</RelativeLayout>
<GridLayout
android:id="@+id/barraMenu"
android:layout_width="match_parent"
android:layout_height="125dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentBottom="true"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:layout_marginBottom="0dp"
android:layout_marginTop="0dp"
android:background="#BDBDBD"
android:columnCount="5"
android:rowCount="1"
android:paddingTop="4dp">
<ImageButton
android:id="@+id/ventas"
android:layout_width="125dp"
android:layout_height="match_parent"
android:background="#E0E0E0"
android:src="@drawable/car"/>
<ImageButton
android:id="@+id/cuentas"
android:layout_width="125dp"
android:layout_height="match_parent"
android:background="#E0E0E0"
android:src="@drawable/bill"/>
<ImageButton
android:id="@+id/almacen"
android:layout_width="125dp"
android:layout_height="match_parent"
android:background="#E0E0E0"
android:src="@drawable/box"/>
<ImageButton
android:id="@+id/siguiente"
android:layout_width="125dp"
android:background="#E0E0E0"
android:layout_height="match_parent"
android:src="@drawable/next"/>
<ImageButton
android:id="@+id/balance"
android:layout_width="125dp"
android:background="#E0E0E0"
android:layout_height="match_parent"
android:src="@drawable/balance"/>
</GridLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_toRightOf="@+id/contenedor"
android:layout_toEndOf="@+id/contenedor"
android:layout_above="@+id/barraMenu"
android:id="@+id/lateral"
android:layout_below="@+id/relativeLayout">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Ticket"
android:id="@+id/lblTicket"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:textAlignment="center" />
</RelativeLayout>
</RelativeLayout>
private void CargarFragmento(Fragment GenericFrgmnt) {
FragmentManager manager = getFragmentManager();
FragmentTransaction ft = manager.beginTransaction();
ft.replace(R.id.contenedor, GenericFrgmnt);
ft.commit();
}
Y en la clase del fragment:
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_clientes, container, false);
mListView = (AbsListView) view.findViewById(android.R.id.list);
((AdapterView<ListAdapter>) mListView).setAdapter(mAdapter);
mListView.setOnItemClickListener(this);
lista = (ListView)view.findViewById(android.R.id.list);
Clientes yo = new Clientes("Cristhian","infinito");
clientes.add(yo);
yo = new Clientes("Alberto","infinito");
clientes.add(yo);
yo = new Clientes("Teresita","infinito");
clientes.add(yo);
yo = new Clientes("Juan","infinito");
clientes.add(yo);
lista.setAdapter(new ClienteListAdapter(clientes));
lista.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String mensajeDialogo = "¿Desea realizar operaciones con el usuario "+ clientes.get(position).getNombre().toString()+ " ?";
new AlertDialog.Builder(getActivity())
.setTitle("Continuar Transaccion")
.setMessage(mensajeDialogo)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
})
.setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
})
.setIcon(android.R.drawable.ic_dialog_info)
.show();
}
});
return view;
}