View frame size unintentionally changes after pushed on a view with different frame size