2017-10-30 1 views
0

저는 몇 사람과 함께 오랫동안 프로젝트 작업을 해왔으며 모든 기능 중에서 사용자는 목록을 통해 다른 사람을 검색 할 수 있습니다. Xamarin의 ListView 컨트롤을 사용하고 ListViewCachingStrategy를 RecycleElement로 설정하여 성능을 최적화했습니다. 지금까지 모든 것이 완벽하게 작동하고 있으며 백엔드 측면에서 ElasticSearch를 사용하여 타이밍 응답을 향상 시켰습니다.ListViewCachingStrategy, RecycleElement는 버그가 있습니까?

우리는 사용자의 정보 만 표시하고 연결된 사용자가 필요한 셀을 눌러 다른 사람의 페이지를 열 수있게했습니다. 우리가 최근에 셀에 위치한 버튼을 통해 목록에 대한 두 번째 컨트롤을 열 수있는 새로운 기능을 구현했습니다. 그렇게하기 위해 우리는 필요한 모든 것을 초기화하고이 새로운 컨트롤의 IsVisible 속성에 바인드 된 bool을 설정하는 UserViewModel에 Command를 설정했습니다. 그러나이 컨트롤이 트리거 (Command) 될 때 우리는 UserViewModel에 해당하지 않습니다. 우리가 원하는 사용자.

이 문제는 처음 6 명의 사용자 (페이지가 나타나면 표시되는 첫 번째 사용자) 이후에만 표시되며 아래로 스크롤하면 사용자의 정보가 다음과 같이 올바르게 업데이트됩니다. 버튼을 두드리면 명령을 원하는 사용자의 ViewModel로 트리거해야합니다. 그러나 처음 6 개의 UserViewModels 중 하나로 끝날 것이므로 ... 누군가가 같은 문제를 겪었는지 Google에서보고되었지만 결과가 내 것과 비슷하지 않습니다. 하지만 RecycleElement가 Android에서 문제를 겪고 있음을 이해했습니다. 내 질문은 자연스러운 것입니다. 아직도 그렇습니까? 그렇지 않은 경우 : 누군가 비슷한 문제에 직면 했습니까?

또한 ListView의 itemSource는 간단한 List이며 ObservableCollection이 아닌 일부 사람들이 사용하도록 조언합니다. 그런 문제를 일으킬 수 있습니까? 제 설명이 충분히 명확하고, 세부 사항이 필요하면 알려 주시기 바랍니다. 이 상황을 정말 디버그하고 싶습니다 ...

내 게시물을 읽고 누가 그것에 응답 할 시간이 걸릴지 알 수있는 사람에게 미리 감사드립니다. 안부,

MT의 DanieIL 이름

답변

0

사람 WSM (그에게 모든 크레딧), 공식 자 마린의 포럼에 나에게 반응하고 자신의 리드는 내 문제를 해결하기 위해 저를 도왔다. Here is the link *

트릭은 단순히 사용자 지정보기 셀을 만들고 주어진 컨트롤의 BindingContext를 다시 설정하는 것이 었습니다. 이 문제는 BindingContext의 항목 값이 BindingContext의 값으로 업데이트 되더라도 컨트롤의 경우가 아니라는 것입니다. 그러므로 그것을 강요함으로써, 그것은 완벽하게 잘 작동했습니다!

안부,

MT의 WSM