Я хочу, чтобы книга понравилась моему приложению. Для этого у меня есть UIPageViewController, который прокручивает несколько страниц. Все работает нормально. В настоящее время тип перехода UIPageViewController - это скручивание страницы, но я хочу реализовать что-то более похожее на флип (например, поворот страницы на твердой обложке).Применение анимации Flip для UIPageViewController iOS Xamarin
Я выполнил следующие действия: -
public new UIViewController GetNextViewController(UIPageViewController pageViewController, UIViewController referenceViewController)
{
var page = referenceViewController as IpadNewController;
var index = page.pageIndex;
index ++;
if(index == numberOfPages)
{
return null;
}
else{
return ViewControllerAtIndex (index);
}
}
public new UIViewController GetPreviousViewController(UIPageViewController pageViewController, UIViewController referenceViewController)
{
var page = referenceViewController as IpadNewController;
var index = page.pageIndex;
if(index == 0)
{
return null;
}else{
index --;
return ViewControllerAtIndex (index);
}
}
РЕДАКТИРОВАНИЕ
private void LoadData(List<Models.NewsModel> viewPages)
{
if (viewPages != null)
{
if (viewPages.Count % 5 == 0)
{
numberOfPages = viewPages.Count/5;
}
else
{
numberOfPages = viewPages.Count/5 + 1;
}
}
this.DataSource = this;
var startingViewController = this.ViewControllerAtIndex(0);
var viewControllers = new UIViewController[] { startingViewController };
if (startingViewController != null)
{
this.SetViewControllers(viewControllers, UIPageViewControllerNavigationDirection.Forward, false, null);
}
this.View.Frame = View.Bounds;
}
private IpadNewController ViewControllerAtIndex(int index)
{
if (numberOfPages == 0 || index >numberOfPages)
{
return null;
}
else
{
newIpadController = (IpadNewController)this.Storyboard.InstantiateViewController("iPadNew_VC");
newIpadController.pageIndex = index;
}
return newIpadController;
}
Есть ли способ, что я могу изменить анимации перехода к флип вместо завитка без использования каких-либо внешних библиотек?
Спасибо за ваш ответ. Iam, используя один UIVIewController. Я просто заменяю взгляды на него, когда страница перевернута. Как я могу это реализовать? –
@helloworld Я не понимаю ваш комментарий, так как ваш вопрос говорит, что вы используете 'UIPageViewController'. Если у вас есть только один UIViewController, и вы удаляете и добавляете 'View', как вы получаете' PageCurl'? – SushiHangover
@SushilHangover Я добавил еще код для ясности. –