날짜가 포함 된 섹션 제목이있는 이벤트 섹션이 있습니다. 나는 특정 날짜로 점프 할 수있을뿐만 아니라 초기 스크롤 위치를 미래의 첫 번째 날짜로 설정해야합니다.ReactNative ListView 데이터로드 후 초기 스크롤 위치 설정
특정 날짜로 이동하려면 상태에서 y 위치를 저장해 보았습니다. renderSectionHeader가 (때문에 게으른 렌더링에) 목록을 아래로있는 요소에 호출되지 않습니다으로하지만
renderSectionHeader= (sectionData, sectionID) => (
<View
onLayout={(event) => {
const { y } = event.nativeEvent.layout;
const sectionPosition = { [sectionID]: y };
const sectionPositions = Object.assign({}, this.state.sectionPositions, sectionPosition);
this.setState({ sectionPositions });
}}
...
나는이 방법을 문제로 달렸다.
나는 수학적으로 위치를 계산하려고 시도했지만 다음으로 각 섹션 렌더링이 주어진 날짜에 더 가깝게 이동하는 동안 화면에 표시됩니다.
내가 원하는 것을 얻을 수있는 방법이 있습니까?
관련 React Native ListView: How to scroll to a particular row
https://github.com/facebook/react-native/issues/499
UPDATE 내 응용 프로그램에서
나는 모든 행이 동일한 높이를 알고있다.
setScroll
이 아닌 contentOffset={{ y: offsetY }}
을 사용하면 작동하도록 주어진 항목까지 모든 항목을 렌더링해야하기 때문에 작동하지 않습니다.
사용하면 initialListSize={99999999}
이 작동하지만 페이지가 매우 느려지므로 사용하지 말라고 경고했습니다.
업데이트 2
는 데이터 소스 내 초기 콘텐츠를 제공하고 이전에 현재 화면의 요소 후 별도의 항목을 추가 데이터를 업데이트 할 수 있습니까?
또는 내가 필요한 것을 찾지 못한 라이브러리가 있습니까?
유로드 된 데이터 전에 y 위치를 저장, 그래서 그들은 바로, 더 이상 관련이없는 r에 있다면? – gran33
저장되어있는 y 위치가 괜찮 으면 나는 이것들로 스크롤 할 수있다. 문제는 게으른 렌더링 때문에 섹션 머리글 중 일부만 렌더링되므로 목록 아래쪽으로 스크롤 할 수 없다. – Tom
"당신은 케이크를 가질 수 없다 그리고 그것을 먹는다. ""게으른 로딩을 원한다면, 이것의 의미입니다. ur는 전체'listView'를 로딩하는 것을 게으른 것입니다. 나는 심지어 네이티브 (iOS)에이 문제가 있다고 가정합니다. – gran33