您好我必须在导航栏上移动文本..我对滚动文本一无所知。有人对此有所了解请告诉我。
谢谢
答案 0 :(得分:2)
我认为你想要像在iphone音乐播放器应用程序中那样移动标签文本。如果是,请执行以下操作。
1`. Download Marquee Label files from this link 'https://github.com/cbpowell/MarqueeLabel'.`
2. - (void)addMovingLabelText {
MarqueeLabel *_lectureName = [[MarqueeLabel alloc] initWithFrame:CGRectMake(0,20,200, 20) duration:5.0 andFadeLength:10.0f];
[_lectureName setTextAlignment:NSTextAlignmentCenter];
[_lectureName setBackgroundColor:[UIColor clearColor]];
[_lectureName setText:@"I am a moving Label in iphone Application"];
_lectureName.adjustsFontSizeToFitWidth=NO;
[_lectureName setAnimationCurve:UIViewAnimationOptionCurveEaseIn];
[self.navigationItem setTitleView:_lectureName];
}
3. call addMovingLabelText from viewDidLoad
答案 1 :(得分:2)
将这些文件添加到您的项目中并将其导入您的课程,然后在您的视图中添加以下命令。我希望您正在为您的应用程序使用基于导航的模板。
http://blog.stormyprods.com/2009/10/simple-scrolling-uilabel-for-iphone.html
然后在viewdidload中
AutoScrollLabel *autoScrollLabel=[[AutoScrollLabel alloc] initWithFrame:CGRectMake(10, 15, 320, 16)];
autoScrollLabel.text = @"Hi Mom! How are you? I really ought to write more often.";
autoScrollLabel.textColor = [UIColor whiteColor];
//self.title = @"Resources";
//self.title = @"%@"autoScrollLabel;
[self.navigationController.navigationBar addSubview:autoScrollLabel];
答案 2 :(得分:1)
嗯,可以使用您自己的titleView自定义导航栏,因此您只需创建一个内部滚动文本的视图。因为在SDK中没有可以实现此效果的组件,所以您必须在开源库中查找一个或创建自己的库。我从未使用它,但请看一下UIScrollingLabel
答案 3 :(得分:0)
使用MarqueeLabel
的Swift 5方法:
let title = MarqueeLabel(frame: CGRect.zero, duration: 20, fadeLength: 10)
title.textAlignment = .center
title.textColor = .white
title.text = header
navigationController?.navigationBar.topItem?.titleView = title