1. xNiemandx, 31.07.2011 #1
    xNiemandx

    xNiemandx Threadstarter Android-Hilfe.de Mitglied

    Heyho,

    ich habe eine ListActivity (und entsprechend auch ein ListView) mithilfe derer ich verschiedene Daten (aus einer Datenbank) anzeige. Dabei bilden immer 4 TextViews und 1 ProgressBar ein Item des ListViews. Um die Daten nun anzuzeigen, habe ich die Methode bindView von einem SimpleCursorAdapter überschrieben. Das Ganze sieht nun so aus:
    Code:
    public class CursorAdapter extends SimpleCursorAdapter {
        public CursorAdapter(Context context, int layout, Cursor c, String[] from,
                int[] to) {
            super(context, layout, c, from, to);
        }
    
        public void bindView(View view, Context context, Cursor cursor) {
            super.bindView(view, context, cursor);
            updateProgressbar(view, cursor);
        }
    
        private void updateProgressbar(View view, Cursor cursor) {
            ProgressBar progressBar = (ProgressBar) view
                    .findViewById(R.id.progressbarHorizontal);
    
            progressBar.setProgressDrawable(view.getResources().getDrawable(
                    R.drawable.greenprogress));
    
            progressBar.setMax(cursor.getInt(cursor.getColumnIndex("numberpages")));
            progressBar.setProgress(cursor.getInt(cursor
                    .getColumnIndex("currentpage")));
        }
    
    }
    Die ProgressBar ist per XML wie folgt definiert:
    Code:
        <ProgressBar style="?android:attr/progressBarStyleHorizontal"
            android:id="@+id/progressbarHorizontal" android:layout_width="match_parent"
            android:layout_height="wrap_content" android:progress="1" android:max="2"/> 
    Mit der ProgressBar tritt allerdings folgender Fehler auf:
    Verwende ich (Samsung i5700 - 2.2) den obigen Code, wird alles richtig dargestellt und auch der Fortschritt wird richtig eingefärbt. Probiert ein Freund hingegen den Code bzw. verwende ich den Code sowie einen Android 2.3.3 Emulator, passiert es, dass entweder der Fortschritt nicht angezeigt wird oder die ProgressBar nicht angezeigt wird.
    Lasse ich "setDrawable" weg, klappt alles - allerdings möchte ich die ProgressBar (abhängig von einem bestimmten Wert) immer anders einfärben.
    Wisst ihr eine Hilfestellung?

    Liebe Grüße.

    Edit: Crosspost bei StackOverflow: http://stackoverflow.com/questions/...etprogressdrawable-in-gingerbread-android-2-3

    Edit: Der Fehler tritt anscheinend doch nicht nur bei Gingerbread auf. Ich hab mir jetzt aber einfach selber eine ProgressBar gebaut - trotzdem Danke.
     
    Zuletzt bearbeitet: 31.07.2011