ProgressBar внутри SimpleAdapter - PullRequest
       2

ProgressBar внутри SimpleAdapter

2 голосов
/ 09 июня 2010

Я пытаюсь добавить ProgressBar к моему представлению row.xml, но я не могу заставить его работать, я продолжаю получать

06-09 12:44:44.802: ERROR/AndroidRuntime(1012): java.lang.IllegalStateException: android.widget.ProgressBar is not a  view that can be bounds by this SimpleAdapter

ArrayList arr = new ArrayList();
HashMap map = new HashMap();
map.put("progress", 10);
arr.add(map);

String [] fieldNames = {"progress"};
int [] fieldIds = {R.id.progress};

SimpleAdapter adapter = new SimpleAdapter(this, arr, R.layout.row, fieldNames, fieldIds);
list = (ListView) findViewById(R.id.list);
list.setAdapter(adapter);

<ProgressBar android:id="@+id/progress"
        style="?android:attr/progressBarStyleHorizontal"
        android:max="100"
        android:progress="5"        
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" 
    />

Кто-нибудь знает, что мне не хватает?

Ответы [ 2 ]

2 голосов
/ 13 октября 2011

Вы также можете использовать SimpleAdapter.setViewBinder() и привязать индикатор выполнения в вашем SimpleAdapter.ViewBinder. Это позволяет использовать встроенную функциональность SimpleAdapter для других полей.

2 голосов
/ 09 июня 2010

SimpleAdapter не знает, как бороться с ProgressBar.Более того, ProgressBar сам по себе будет действительно ужасной строкой списка.

Пожалуйста, поместите ProgressBar внутрь какой-то более крупной разметки строк (с меткой и тому подобным).Вам также понадобится создать собственный класс адаптера, который будет знать, как связывать данные с ProgressBar.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...