Я пытаюсь реализовать салфетки для просмотра функциональности, как и моменты щебетать:Как прокрутить, чтобы просмотреть элементы навигационной панели?
Если вы посмотрите на верхней части вы увидите горизонтальный слайдер с видом. Мои требования немного разные ... Вдоль этого горизонтального слайдера мне нужна моя обычная панель навигации с пользовательскими элементами каждой страницы.
Салфетка для просмотра Я реализовал некоторые незначительные ошибки. Пожалуйста, обратите внимание на это видео (это то, что я сделал до сих пор):
Как вы можете видеть функциональные виды красть работает, но я до сих пор отсутствуют некоторые важные вещи, а именно:
- Когда ударяя к следующему представлению его прокрутка вверх (если смотреть на видео)
- Моих взглядов все содержащиеся в навигационных контроллерах с их соответствующими элементами NavBar. То, как я это вижу, мне понадобится что-то вроде
PushViewController
без кнопки «Назад», но это будет работать в обоих направлениях ... Я немного потерял здесь. Если добавить контроллер навигации вместо представления, он отобразит панель, но ниже текущей существующий, не заменяя его.
Любые идеи о том, как их решить?
Я занимаюсь разработкой с использованием Xamarin.iOS, но если вы можете привести пример, используя быстрые я думаю, я мог бы попытаться перевести это :)
Это то, что я до сих пор:
var viewController = Storyboard.InstantiateViewController("detailClaimViewController") as DetailClaimViewController;
viewController.ClaimId = ClaimId;
AddChildViewController(viewController);
ScrollView.AddSubview(viewController.View);
viewController.DidMoveToParentViewController(this);
var sumsInsController = Storyboard.InstantiateViewController("sumsInsuredListViewController")
as SumsInsuredListViewController;
var sumsInsuredFrame = sumsInsController.View.Frame;
sumsInsuredFrame.X = View.Frame.Size.Width;
sumsInsController.View.Frame = sumsInsuredFrame;
sumsInsController.ClaimId = ClaimId;
sumsInsController.Title = $"Sums insured for {Title}";
AddChildViewController(sumsInsController);
ScrollView.AddSubview(sumsInsController.View);
sumsInsController.DidMoveToParentViewController(this);
ScrollView.ContentSize = new CGSize(View.Frame.Size.Width * 2, View.Frame.Size.Height - 49);
Это код, который мне нужен, потому что он загружает навигационную панель и что пользовательские элементы навигационной панели ViewController
(как я уже сказал, этот «работает», но показывает правильную панель навигации ниже стандартной, t заменить его):
var viewController = Storyboard.InstantiateViewController("detailClaimViewController") as DetailClaimViewController;
viewController.ClaimId = ClaimId;
AddChildViewController(viewController);
ScrollView.AddSubview(viewController.View);
viewController.DidMoveToParentViewController(this);
var navController = new UINavigationController();
var sumsInsController = Storyboard.InstantiateViewController("sumsInsuredListViewController")
as SumsInsuredListViewController;
var sumsInsuredFrame = sumsInsController.View.Frame;
sumsInsuredFrame.X = View.Frame.Size.Width;
sumsInsController.View.Frame = sumsInsuredFrame;
sumsInsController.ClaimId = ClaimId;
sumsInsController.Title = $"Sums insured for {Title}";
navController.AddChildViewController(sumsInsController);
AddChildViewController(navController);
ScrollView.AddSubview(navController.View);
navController.DidMoveToParentViewController(this);
ScrollView.ContentSize = new CGSize(View.Frame.Size.Width * 2, View.Frame.Size.Height - 49);
Спасибо!
Джанлука, благодарю вас за ответ. Не могли бы вы расширить это? Может быть, с примером? Спасибо – eestein
Извините, ответ не очень ясен ... Я отредактирую ... дай мне секунду. –
Нет проблем, спасибо еще раз :) – eestein