You could do something like this:
// first try if the element is clickable
try {
driver.findElement(By.id("whatever")).click();
} catch (ElementNotFoundException e) {
//if element is not present
driver.swipe("swipe_to_the_new_coordinates_desired");
// and then try again
driver.findElement(By.id("whatever")).click();
}
or something on these similar lines. There are some deprecated API's like scrollTo() and scrollToExact(), which you might want to try if it helps.
Cheers!!