두 개의 개별 객체를 조작해야하는 상황에 처해 있습니다. 나는 두 개의 서로 다른 것들을 결합하여 우리 자신의 커서를 만드는 방법이 있었으면 좋겠다. 그러나 그것이 허용되는지 확실하지 않습니다. 당신이 할 수없는 어딘가를 읽으십시오. 그러나 나는 그것에 대해 특정한 질문을하고 싶었습니다. 그래서 비슷한 상황에 처한 다른 사람들에게 약간의주의를 기울였습니다.커서를 확장하거나 구현할 수 있습니까?
답변
나는 두 개의 사람
당신이 MergeCursor
를 시도 결합하여 우리 자신의 커서를 만들려면 어떻게든지이되었다 기대했다? 인용 부호 the documentation :
커서 배열을 단일 선형 커서로 나타낼 수있는 편리한 클래스입니다. 표시되는 커서의 스키마는 전적으로 MergeCursor의 작성자에게 달려 있으며 원하는 경우 다를 수 있습니다. getColumns, getColumnIndex 등을 호출하면 MergeCursor가 현재 가리키고있는 행의 값이 반환됩니다. 난, 당신의 목표는
AdapterView
어떤 형태 모두Cursors
를 표시하는 경우
또한, 당신은 my MergeAdapter
을 사용할 수 있고 당신이 당신의 구체적인 사용 사례에 대한 해결책을 발견하는 경우
심지어 Adapter
수준에서 일을 연결 여전히 주요 질문에 답하고 싶습니다.
예 자신의 커서를 구현할 수 있습니다.
Cursor은 공용 인터페이스이며 모두가 구현할 수 있습니다.
그러나 구현해야 할 많은 방법이 있습니다.
AbstractCursor 또는 AbstractWindowedCursor을 기본 클래스로 사용하면 오버 헤드를 줄일 수 있습니다.
사용할 수있는 구체적인 구현을 확장 할 수도 있습니다.
CrossProcessCursor, CrossProcessCursorWrapper, CursorWrapper, MatrixCursor, MergeCursor, MockCursor, SQLiteCursor
감사합니다. 'AbstractCursor'에 대해서도 주목했습니다. 그러나 두 개의 커서 내부에있는 값을 단일 커서로 가져 오는 방법은 무엇입니까? AbstractCursor를보고 있지만 요소가 어디에 있는지는 알 수 없습니다. 나는 그것이 사용하는 모든 방법을 보지만 그 요소를 담고있는 것은 아무것도 없다. – Andy
- 1. 자체 IASKSettingsReader를 구현할 수 있습니까?
- 2. 서비스가 SensorEventListener를 구현할 수 있습니까?
- 3. 약속으로 모듈로드를 구현할 수 있습니까?
- 4. OAuth의 절반을 구현할 수 있습니까?
- 5. CompareExchange를 CompareAndSwap으로 구현할 수 있습니까?
- 6. 하스켈은 OSGi를 구현할 수 있습니까?
- 7. 어떻게 FileTimeToSystemTime을 구현할 수 있습니까?
- 8. 어떻게이 연결을 구현할 수 있습니까?
- 9. jqGrid로 지연로드를 구현할 수 있습니까?
- 10. 다음을 어떻게 구현할 수 있습니까?
- 11. 어떻게 UIDocument.h를 구현할 수 있습니까?
- 12. Android에서 어떻게 구현할 수 있습니까?
- 13. realloc은 메모리를 확장하거나 메모리 문제를 일으킬 수 있습니까?
- 14. 왜 커서를 직접 사용할 수 있습니까?
- 15. 암시 적 커서를 강제로 닫을 수 있습니까?
- 16. android editText가 커서를 볼 수 있습니까?
- 17. 안드로이드에서 IPC를 통해 커서를 전달할 수 있습니까?
- 18. 상단의 글꼴 커서를 어떻게 얻을 수 있습니까?
- 19. sybase에서 커서 안에 커서를 사용할 수 있습니까?
- 20. VisualBrush에서 WPF로 커서를 만들 수 있습니까?
- 21. FBLoginButton없이 iphone FBConnect를 구현할 수 있습니까?
- 22. mapreduce를 사용하여 웹 서버를 구현할 수 있습니까?
- 23. 자바에서 Hunch의 API를 어떻게 구현할 수 있습니까?
- 24. 어떻게 클로저에 복합 키를 구현할 수 있습니까?
- 25. XML 파일없이 ListView를 구현할 수 있습니까?
- 26. 어떻게 안드로이드에서 'Lettrine'렌더링을 구현할 수 있습니까?
- 27. DisposeBase 추상 클래스를 구현할 수 있습니까?
- 28. GWT에서 활성화 인수를 어떻게 구현할 수 있습니까?
- 29. Windows phone 7에서 핑을 구현할 수 있습니까?
- 30. 어떻게 mysql을 사용하여이 개념을 구현할 수 있습니까?
OOOO, 나는 몰랐다 때문에 그것이 존재하는 것을 시도하지 않았다 아니. 없다 나는 무언가를 찾으려고 노력했지만 그것에 관해서는별로 논란의 여지가 없다. 당신 덕분에, 정확히 내가 찾고 있었던 것이 었습니다! 나는'CursorWrapper'를 사용하여 내 자신을 만들려고 했었지만 이것은 훨씬 더 잘 작동합니다 :) 감사합니다! – Andy
명확히하기 위해, 나는 문서를보고있다. 그러나 그것은'getCount'가 모든 커서의 수, 커서를 지닌 배열 등을 가져올지를 설명하지 않는다. 나는 그것이 전체의 길이라고 가정한다. 커서가 추가 되었습니까? 또한 커서 배열의 각 인덱스를 순서대로 따라 가면서 별도의 작업없이 순서대로 각 커서를 살펴볼 것이라고 가정해야합니까? 내가 사용한 적이 없는지 확인하고 싶었어. 도움에 감사드립니다. – Andy
@Andy : "전체 길이라고 가정합니다 ..."- 예, 소스 코드에서 볼 수 있듯이 : https://android.googlesource.com/platform/frameworks/base/+/refs /heads/master/core/java/android/database/MergeCursor.java "커서의 각 인덱스를 통과한다고 가정할까요?"- "인덱스"가 "위치"를 의미하면 예 (다시 소스를 사용하십시오). – CommonsWare