내 액티비티에 ListView가 있습니다. 현재 삭제할 항목을 선택하기 위해 긴 클릭 항목을 구현하는 중입니다. 지금까지 모든 것이 작동하고 있습니다.어떻게하면 ArrayList <String>을 savedInstanceState에 저장할 수 있습니까?
선택한 항목의 태그를 String 객체의 ArrayList에 저장합니다. 그러나 화면 방향을 변경할 때 선택 영역이 사라집니다. 그래서 선택을 복원하려면 savedInstanceState에 ArrayList를 저장하고 싶습니다.
일반적인 savedInstanceState는 Bundle 객체이므로 [1] http://developer.android.com/reference/android/os/Bundle.html의 Bundle 설명서를 살펴 보았습니다.
나는 내가 찾고있는 것으로 믿는 다음과 같은 방법을 발견했다. 그러나 나는 그것을 이해하지 못했다.
putParcelableArrayList(String key, ArrayList<? extends Parcelable> value)
나는 또한 String
이 Parcelable을 확장하지 않는다는 것을 알았습니다. 그렇다면 위의 방법을 ArrayList<String>
과 어떻게 사용합니까?
이 LOL, 보인다
방법을 사용해야합니다 사용할 수 있습니다. 이것은 확실히 작동하지만 putSerializable ("myKey", (Serializable) myarraylist)도 작동합니다. 하지만 분명히 더 좋은 해결책이있을 때 그것은 어리 석다. 고마워. – DavidH
@DavidHeisnam'putSerializable'의 효율성이 떨어지면'putStringArrayList'를 사용해야합니다. – fRoStBiT
예, 지금 putStringArrayList를 사용하고 있습니다. 고마워. – DavidH