如標題所示,我有一個LinearLayout
,我將其作爲ListView
的一部分使用。當我點擊物品時,我需要將其LinearLayout
的可見性從View.GONE
更改爲View.VISIBLE
(反之亦然)。重複使用時保持LinearLayout不見視圖用於ListView
我的問題是,當我點擊第一項(所以現在它的佈局是可見的),而不是滾動列表下來,一個可重用的第一個項目的項目似乎有其佈局的可見性設置爲View.VISIBLE
也完全一樣第一個項目,雖然它應該是View.GONE
。其餘顯示的項目不重用第一個按預期工作。
我清楚地明白爲什麼會發生的事情,我想我需要爲每一個項目存儲在LinearLayout
的可視性我ListView
(不僅是當前顯示的),然後使用它在我getView()
方法。你們有什麼想法我該怎麼做?
從我的活動有關的某些代碼:
public class MainActivity extends AppCompatActivity {
ListView alarmClocksListView;
ArrayList<AlarmClock> alarmClocksList;
protected void onCreate(Bundle savedInstanceState) {
alarmClocksList = new ArrayList<>();
alarmsArrayAdapter = new AlarmsArrayAdapter(this, alarmClocksList);
alarmClocksListView.setAdapter(alarmsArrayAdapter);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//some code
alarmClocksList.add(new AlarmClock());
alarmsArrayAdapter.notifyDataSetChanged();
}
}
你能張貼您的適配器代碼和活動代碼呢? –