Невозможно преобразовать объект типа java.lang.String в тип Orders_Class. Как я могу это исправить?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Невозможно преобразовать объект типа java.lang.String в тип Orders_Class. Как я могу это исправить?

Сообщение Anonymous »

Как я могу получить данные о продуктах в дочерней базе данных Firebase Realtime моих заказов:
Это мой класс Orders_class
Этот класс содержит только orderId и Заказать полную оплату
package com.example.safetysouq.Orders_Classes;

public class Orders_Class {
String OrderId,FullPay,ProductName;

public String getProductName() {
return ProductName;
}

public void setProductName(String productName) {
ProductName = productName;
}

public String getFullPay() {
return FullPay;
}

public void setFullPay(String fullPay) {
FullPay = fullPay;
}

public String getOrderId() {
return OrderId;
}

public void setOrderId(String orderId) {
OrderId = orderId;
}
}

это мой Orders_adapter
этот класс содержит только orderId и полную оплату заказа
public class Orders_Adapter extends BaseAdapter {
ArrayListorderItemClassArrayList;
Orders_Item_Adapter ordersItemAdapter;

Context context;
DatabaseReference databaseReference,databaseReference2;
FirebaseAuth firebaseAuth;
ArrayListordersClassArrayList;
ArrayListsingleCartProductInformationDataClassArrayList;
LayoutInflater layoutInflater;

public Orders_Adapter(Context context, DatabaseReference databaseReference, FirebaseAuth firebaseAuth, ArrayList ordersClassArrayList) {
this.context = context;
this.databaseReference = databaseReference;
this.firebaseAuth = firebaseAuth;
this.ordersClassArrayList = ordersClassArrayList;
}

@Override
public int getCount() {
return ordersClassArrayList.size();
}

@Override
public Object getItem(int position) {
return null;
}

@Override
public long getItemId(int position) {
return 0;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (layoutInflater==null){
layoutInflater=(LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
if(convertView==null){
convertView =layoutInflater.inflate(R.layout.orders_gridview,null);
}
TextView orders_id =convertView.findViewById(R.id.orderid);
TextView order_total_price = convertView.findViewById(R.id.ordertotalprice);
GridView order_item_grid_view = convertView.findViewById(R.id.ordersitemsgridview);

orders_id.setText("Order ID : "+"#"+ordersClassArrayList.get(position).getOrderId());
order_total_price.setText("Total Money : "+ordersClassArrayList.get(position).getFullPay()+" EGP");

return convertView;
}
}

это моя страница_заказов(активность)
package com.example.safetysouq.Orders_Classes;

import android.os.Bundle;
import android.widget.GridView;
import android.widget.Toast;

import androidx.activity.EdgeToEdge;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.graphics.Insets;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;

import com.example.safetysouq.R;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;

import java.util.ArrayList;

public class Orders_Page extends AppCompatActivity {
private GridView ordersGridview;
private ArrayList ordersClassArrayList;
private Orders_Adapter ordersAdapter;
private DatabaseReference databaseReference;
private FirebaseAuth firebaseAuth;
private String name;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_orders_page);
ordersGridview=findViewById(R.id.ordersGridview);
databaseReference = FirebaseDatabase.getInstance().getReference();
firebaseAuth= FirebaseAuth.getInstance();

databaseReference=FirebaseDatabase.getInstance().getReference().child("Orders").child(firebaseAuth.getCurrentUser().getUid());
ordersClassArrayList=new ArrayList();
ordersAdapter = new Orders_Adapter(Orders_Page.this,databaseReference,firebaseAuth,ordersClassArrayList);
ordersGridview.setAdapter(ordersAdapter);
databaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for(DataSnapshot dataSnapshot:snapshot.getChildren()){
Orders_Class ordersClass = dataSnapshot.getValue(Orders_Class.class);
ordersClassArrayList.add(ordersClass);
}
ordersAdapter.notifyDataSetChanged();
}
@Override
public void onCancelled(@NonNull DatabaseError error) {

}
});
}
}


Подробнее здесь: https://stackoverflow.com/questions/787 ... w-can-i-fi
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»