2

ダイアログ内に ListView があります...データ用の独自のアダプターがありますが、ダイアログにアダプターが作成/変更されるスピナーもあります。

Spinner の選択で変更されたアダプターが作成され、ListView のアダプターが新しいアダプターに設定されます...

それはすべて正常に動作しますが、アダプターが変更された後、私のダイアログはそのレイアウトを無効にしていません.常に一歩遅れています.

編集:スピナーの onItemSelected イベントでのみ次のことを行っています

public void onItemSelected(AdapterView<?> adapterView, View view, int position, long id) 
{ 
    if (adapterView.getId() == R.id.spMG) 
    {
        long mg_id = ((MG)sp.getSelectedItem()).getID();
        adapter.clear();
        adapter.addAll(DBDataManager.getExercises(mg_id, true));

        adapter.notifyDataSetChanged();
        ((View)lv).invalidate();
    }
}

私は ArrayAdapter を使用しており、ArrayList をアダプターに追加しているだけです。

4

0 に答える 0