Customizing page navigation in our React Native PDF viewer
After loading a PDF document in Nutrient, you can programmatically interact with it (e.g. scrolling to different pages). All of the interaction APIs are available on NutrientView, which is the core PDF viewer.
Changing the current page
A user can change the current page in the UI by swiping on a device. Pages can also be programmatically changed using the pageIndex prop, like so:
<NutrientView document={DOCUMENT} // Navigate to the page index at index 4. pageIndex={4} ref="pdfView" fragmentTag="PDF1" style={{ flex: 1 }}/>Getting the current page
To get the currently visible page index, you need to listen to the onStateChanged event, like so:
export default class App extends Component<{}> { constructor(props) { super(props); this.state = { currentPageIndex: 0, }; }
render() { return ( <NutrientView document={DOCUMENT} ref="pdfView" fragmentTag="PDF1" style={{flex: 1}} // Listen to the `onStateChanged` event. onStateChanged={event => { // Update the state’s current page index. this.setState({ currentPageIndex: event.currentPageIndex, }); }} /> ); }}
...// Get the current page index.const currentPageIndex = this.state.currentPageIndex;