No, that's not how PageFactory works. Elements are lazy loaded... they are fetched only and at the point when they are needed.
Having said that, the Selenium lead and contributors have stated not to use PageFactory for many reasons. You should instead use an actual page object. I've put a sample login page page object below.
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
public class LoginPage {
WebDriver driver;
private final By usernameLocator = By.id("username");
private final By passwordLocator = By.id("password");
private final By submitButtonLocator = By.cssSelector("button[type='submit']");
public LoginPage(WebDriver driver) {
this.driver = driver;
}
public void login(String username, String password) {
driver.findElement(usernameLocator).sendKeys(username);
driver.findElement(passwordLocator).sendKeys(password);
driver.findElement(submitButtonLocator).click();
}
}
and then in your test, you call it like
LoginPage loginPage = new LoginPage(driver);
loginPage.login(username, password);
or more simply,
new LoginPage(driver).login(username, password);