Я добавил две метки в свою навигационную панель, и я пытаюсь потушить ее и потушить другую, основанную на позиции y на прокрутке. Когда я регистрирую альфа-значение, кажется, что значения верны. Но как это выглядит, когда вы запускаете это неправильно. Альфа topTitleLable идет от 1 до почти 0, а затем медленно исчезает, а не выходит. Не знаете, как отладить это.Назначение альфы из делегата scrollview
Это изображение вниз свиток с меткой замирания в том, когда она должна быть выведении:
tldr: Как вы измените альфа этикетки на основе от позиции Scrollview?
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
static CGFloat startFade = 190;
static CGFloat endFade = 215;
CGFloat difference = endFade - startFade;
if (scrollView.contentOffset.y < startFade && self.navigationController.topTitleLabel.alpha != 1.0) {
self.navigationController.topTitleLabel.alpha = 1.0;
self.navigationController.bottomTitleLabel.alpha = 0.0;
} else if (scrollView.contentOffset.y >= startFade && scrollView.contentOffset.y <= endFade) {
CGFloat scrollViewFraction = difference - (scrollView.contentOffset.y - startFade);
CGFloat topLabelAlpha = scrollViewFraction/difference;
CGFloat bottomLabelAlpha = 1 - topLabelAlpha;
self.navigationController.topTitleLabel.alpha = topLabelAlpha;
NSLog(@"%f VS. %f", topLabelAlpha, self.navigationController.topTitleLabel.alpha);
self.navigationController.topTitleLabel.alpha = bottomLabelAlpha;
} else if (scrollView.contentOffset.y > endFade && self.navigationController.topTitleLabel.alpha != 0.0) {
self.navigationController.topTitleLabel.alpha = 0.0;
self.navigationController.bottomTitleLabel.alpha = 1.0;
}
}
@dahh Ничего себе, спасибо! Я закончил использовать другой метод для двух ярлыков, чтобы затухать и исчезать при разных значениях y, но график был чрезвычайно полезен. – kiaraRobles