주 활동에서 목록을 생성하는 앱이 있는데 주요 활동에는 목록을 필터링하고 사용자 지정 목록보기 확인란에 전체 목록의 하위 집합을 나열하는 여러 탭이 있습니다.다른 활동의 목록 필터링
각 탭에 어댑터가 있고 주 목록을 필터링하고 해당 하위 집합을 자체 어댑터에 추가하는 다양한 onCreate()에서 스레드가 실행됩니다. 상자를 체크 할 때마다 체크 박스 상태를 SharedPreferences에 저장합니다.
다양한 ListActivities 중에서 확인란을 동기화하는 데 문제가 있습니다. 1 ListActivity에서 상자를 체크하고 다른 탭으로 전환하면 거기에 업데이트되지 않습니다. 앱을 종료하고 다시 시작하면 주 활동이 목록을 다시 생성하고 SharedPreferences를 읽고 모든 체크 박스를 업데이트합니다.
다양한 탭의 다양한 ListActivities가 항상 동기화되도록하려면 어떻게해야합니까?
감사합니다.
감사합니다. CharSequence 대신 int 값을 기반으로 필터를 구현하는 방법은 무엇입니까? performFiltering() 및 publishResults()는 CharSequence 매개 변수 만 허용합니다. – user1118764
또한 다른 활동에서 정의되거나 초기화 된 어댑터에 어떻게 액세스합니까? 나는 SetListAdapter()에 다른 액티비티의 어댑터를 전달하여 그렇게하려고 시도했지만 getCount()가 완전히 채워 졌음에도 불구하고 빈 목록을 얻었다. 디버깅 한 결과 어댑터의 getView()가 전혀 호출되지 않은 것으로 나타났습니다. – user1118764
확실한 방법의 서명을 변경할 수 없습니다. 하지만 당신이 필요하다고 생각하지 않습니다 - 내가 제대로 당신이 전달 된 값 무시하고 설정에서 int를 읽을 수 있습니다. 내가 틀렸어도 여전히 값을 전달해야한다면 String.valueof (your_int)를 사용하고 Integer.valueOf (char_seq.toString())를 통해 메소드에서 비 직렬화 할 수 있습니다. –