Verständnisfrage zu CourserAdapter and Zugriff auf Datenbank

M

Mits

Neues Mitglied
0
Hallo Leute!

Ich hab hier mal eine Verständnisfrage!

Ich gebe über einen Curser Adapter eine View aus!

Jetzt möchte ich zu dieser View noch einzelne Spalten aus einer Datenbank hinzufügen!

Nur weiß ich nicht genau wo ich den Aufruf für die Datenbank machen muß!

Wo muß ich diese Zeile einfügen, damit ich in Nachstehendem Code auf die Datenbank zugreifen kann!
database = new ExampleDatabase(this, null);
Cursor customer = database.getCustomerById(customerId);

Anbei poste ich mal den Code:
Bin für jeden Tip Dankar!


Code:
public class OrderAdapter extends CursorAdapter {
    //application = (ExampleApplication) getApplication();
            //ExampleDatabase db = new ExampleDatabase(this, null);
    
    private int idIndex;
    private int customerIndex;
    private int timeIndex;
    private int vkpriceIndex;
    private int orderTimeIndex;
    private int orderSendIndex;
    
    @SuppressWarnings("deprecation")
    public OrderAdapter(Context context, Cursor c) {
        super(context, c);
        
        idIndex = c.getColumnIndex(Order.KEY_ID);
        customerIndex = c.getColumnIndex(Order.KEY_CUSTOMER_ID);
        timeIndex = c.getColumnIndex(Order.KEY_DELIVERY_TIME);
        vkpriceIndex = c.getColumnIndex(Order.KEY_TOTAL_PRICE);
        orderTimeIndex= c.getColumnIndex(Order.KEY_ORDER_TIME);
        orderSendIndex= c.getColumnIndex(Order.KEY_TIME_SENT);
    }
    
    @Override
    public void bindView(View view, Context context, Cursor cursor) {
        setViewInfos(view, cursor);
    }

    @Override
    public View newView(Context context, Cursor cursor, ViewGroup parent) {
        
        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View itemView = inflater.inflate(R.layout.order_list_item, null);

        return setViewInfos(itemView, cursor);
        
    }
    
    @SuppressWarnings("deprecation")
    private View setViewInfos(View itemView, Cursor cursor) {
      
        
        TextView id = (TextView) itemView.findViewById(R.id.order_id);
        id.setText(Integer.toString(cursor.getInt(idIndex)));
        
        TextView customer= (TextView) itemView.findViewById(R.id.order_customer);
        customer.setText(cursor.getString(customerIndex));
        
               TextView time = (TextView) itemView.findViewById(R.id.order_date);
        time.setText(Utils.toShortDate(new Date(cursor.getLong(timeIndex))));

        TextView orderTime = (TextView) itemView.findViewById(R.id.order_time);
        orderTime.setText(Utils.toShortDate(new Date(cursor.getLong(orderTimeIndex))));
        
        TextView totalprice = (TextView) itemView.findViewById(R.id.order_totalprice);
        totalprice.setText(Integer.toString(cursor.getInt(vkpriceIndex)));
        
        TextView orderSend = (TextView) itemView.findViewById(R.id.order_send);
        orderSend.setText(Utils.toShortDate(new Date(cursor.getLong(orderSendIndex))));
    
        return itemView;
    }
Vielen Dank im voraus!

lg
Jörg
 
Hallo Jörg

Den Cursor den du an den CursorAdapter übergibst erzeugst du ja in deiner (List)View die du füllen willst.
Also müsstest du dort auch deine SQL abfrage haben in der du die Spalten festlegst die du haben willst.

Gruß
Jens
 
Hallo Jens!

Vielen Dank das war genau die Info die mir gefehlt hat,
oft sieht man wirklich den Wald vor lauter Bäumen nicht mehr!

Danke!

lg
Jörg
 

Ähnliche Themen

M
  • MikelKatzengreis
Antworten
5
Aufrufe
127
swa00
swa00
S
Antworten
33
Aufrufe
2.669
Sempervivum
S
B
Antworten
4
Aufrufe
491
bb321
B
Zurück
Oben Unten