0

スクロールしてアイテムが画面から消えても、スクロールして戻っても再描画されないリストビューがあります(テキストとチェックボックス)。実際、リストビューで画面の下部にないアイテムは、スクロールしても描画されません。これはフローズンヨーグルトでのみ発生します。それ以外のバージョンは問題なく動作します。確認しましたが、getItemメソッドが呼び出されたときにデータがアダプターに期待どおりに存在しますが、表示されません。リストビューアイテムがあり(アイテムごとに同じ量の画面スペースを占めています)、画面からスクロールして再びオンにすると、テキストまたはチェックボックスが表示されません。

私のコードはそのようなものです:

for(checklist cl : checkLists) {
    ArrayList<checklistItem> ChecklistItems = database.getChecklistItems(
                                                  cl.getId());

    ListView lv = new ListView(this);
    lv.setScrollingCacheEnabled(true);                  
    lv.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, 
                                        LayoutParams.WRAP_CONTENT));
    la = new checklistItemAdapter(this, layoutItem, ChecklistItems);      
    la.setActivity(this);
    lv.setAdapter(la);                

    TextView tv = new TextView(this);
    tv.setText(cl.getItemText());
    tv.setGravity(1);
    tv.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, 50));
    tv.setBackgroundColor(Color.BLUE);
    tv.setTextSize(28);
    tv.setTextScaleX(2);
    tv.setTypeface(Typeface.DEFAULT_BOLD);
    tv.setTypeface(Typeface.SANS_SERIF);

    layoutChecklist = new LinearLayout(this);                
    layoutChecklist.setOrientation(1);
    layoutChecklist.addView(tv);
    layoutChecklist.addView(lv);

    layoutChecklists.addView(layoutChecklist);
}
4

1 に答える 1

0

コードですべてのビューを作成する代わりに、ViewGroup(ドキュメントごとに推奨されるメソッド)を使用してこれを解決しました。

于 2010-11-23T23:35:18.893 に答える