2017-08-01 1 views
0

Ich bin ziemlich Anfänger und schreibe gerade eine App, die eine Liste von Restaurants enthält. Ich verwende eine SQLite-Datenbank, um die "Restaurant" -Objekte zu speichern und benutze einen CursorAdapter, um sie in einem ListView anzuzeigen.Pass Nummer der wiederholten Datenbankspalte Instanzen in TextView mit CursorAdapter

Derzeit sind die Felder ein Foto, der Name des Restaurants und seine Lage.

Ich möchte eine weitere TextView haben, die zeigt, wie oft dieses bestimmte Restaurant in der Datenbank erscheint. Ich habe Probleme herauszufinden, wie ich das in meiner CursorAdapter Klasse machen kann.

Unten ist meine BindView-Methode in der CursorAdapter-Klasse, wo die vorhandenen Ansichten aktualisiert werden.

@Override 
public void bindView(View view, Context context, Cursor cursor) { 

    // Find individual views that we want to modify in the list item layout 
    ImageView foodImageView = (ImageView) view.findViewById(R.id.food_image_view); 
    TextView restaurantNameTextView = (TextView) view.findViewById(R.id.restaurant_name_text_view); 
    TextView restaurantLocationTextView = (TextView) view.findViewById(R.id.restaurant_location_text_view); 

    // Find the columns of restaurant attributes that we're interested in 
    int foodPictureColumnIndex = cursor.getColumnIndex(RestaurantEntry.COLUMN_FOOD_PHOTO_URL); 
    int restaurantNameColumnIndex = cursor.getColumnIndex(RestaurantEntry.COLUMN_RESTAURANT_NAME); 
    int restaurantLocationColumnIndex = cursor.getColumnIndex(RestaurantEntry.COLUMN_RESTAURANT_LOCATION); 

    // Read the restaurant attributes from the Cursor for the current restaurant 
    String foodPhoto = cursor.getString(foodPictureColumnIndex); 
    String restaurantName = cursor.getString(restaurantNameColumnIndex); 
    String restaurantLocation = cursor.getString(restaurantLocationColumnIndex); 

    // Update the Views with the attributes for the current restaurant 
    Picasso.with(mContext).load(foodPhoto).into(foodImageView); 
    restaurantNameTextView.setText(restaurantName); 
    restaurantLocationTextView.setText(restaurantLocation); 
} 

Antwort

0

beantwortete meine eigene Frage; Verwenden Sie eine temporäre ArrayList, um zu verfolgen, wie oft ein bestimmter Name in der Datenbanktabelle

erscheint
Verwandte Themen