我有2个片段,第一个是所选项目的列表,第二个是我在其中选择项目的位置。 在第一个片段的onActivityResult事件中,我获得了从第二个片段发送的信息,将信息添加到object(list)并将其作为数据源分配给我的listview,但是此信息未显示:
///////FRAGMENT 1:////
public void onActivityResult(int requestCode, int resultCode, Intent data) {
tbllistadoproducto objproducto= new tbllistadoproducto();
if (resultCode == 1) {
//if (requestCode==AppConstant.FRAGMENT_CODE){
//String datafromC = data.getStringExtra("datafrom C");
String dataS= data.getStringExtra("PRODUCTO");
try{
JSONObject jsonObject = new JSONObject(dataS);
objproducto.setCodf(jsonObject.getString("Codf"));
objproducto.setCodi(jsonObject.getString("Codi"));
objproducto.setMarca(jsonObject.getString("Marca"));
objproducto.setDescripcion(jsonObject.getString("Descripcion"));
objproducto.setUMedida(jsonObject.getString("UMedida"));
objproducto.setStock(Integer.parseInt(jsonObject.getString("Stock")));
objproducto.setPrecio(Double.parseDouble(jsonObject.getString("Precio")));
objproducto.setMoneda(jsonObject.getString("Moneda"));
_lstProductos.add(objproducto);
adapter_listaproducto adaptador= new adapter_listaproducto(getActivity(),_lstProductos);
lvwProductos.setAdapter(adaptador);
//don't DISPLAY THE ITEMS
//txtTotal.setText("ERRROR");
}
catch (Exception ex)
{
Toast.makeText(getActivity(),ex.getMessage(),Toast.LENGTH_LONG).show();
}
finally {
super.onActivityResult(requestCode, resultCode, data);
}
//}
}
}
////////////FRAGMENT2 : Code of my Second Fragment to select:///////////////
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View vista = inflater.inflate(R.layout.fragment_listadoproductospedidos, container, false);
lvwProductos=vista.findViewById(R.id.listadoproductopedido_lvwproductos);
btnBuscar=vista.findViewById(R.id.listadoproductopedido_imgbtnbuscar);
txtTexto=vista.findViewById(R.id.listadoproductopedido_txttexto);
lvwProductos.setClickable(true);
btnBuscar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CargarProductos();
}
});
lvwProductos.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
tbllistadoproducto objProducto= (tbllistadoproducto)lvwProductos.getItemAtPosition(position);
Gson gson = new Gson();
String jsonProducto = gson.toJson(objProducto);
getTargetFragment().onActivityResult(
getTargetRequestCode(),
1,
new Intent().putExtra("PRODUCTO", jsonProducto)
);
getFragmentManager().popBackStack();
}
});
return vista;
}
I hope to show the items in my listview, but don't show.
答案 0 :(得分:0)
“适配器名称”。notifyDataSetChanged(); 这项工作将在您列表未加载的第一个片段上完成