0

出现键盘时如何在 inputAccessoryView 内的 UILabel 中使用 AutoScrollLabel。我似乎很难使用它,因为我没有使用 IB 方法将它连接到代码。我以编程方式执行此操作。我已经导入了 AutoScrollView 的 .h 文件,它给了我错误。 在这里找到 AutoScrollLabel

这是我的 inputAccessoryView 代码。

- (void)viewDidLoad
{
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake
(0, 0, 320, 23)];
label.backgroundColor = [UIColor clearColor];
label.shadowOffset = CGSizeMake(0, 1);
label.text = @"24 Hour time format only!";
label.font = [UIFont systemFontOfSize:17.0];
[label setTextColor:[UIColor whiteColor]];

UIBarButtonItem *text2 = [[UIBarButtonItem alloc] initWithCustomView:label];

UIToolbar* numberToolbar = [[UIToolbar alloc]init];
numberToolbar.barStyle = UIBarStyleBlackOpaque;
numberToolbar.items = [NSArray arrayWithObjects:text2, nil];
[numberToolbar sizeToFit];
4

2 回答 2

0

在我的示例中,我使用 xib 创建了标签,然后在它出现时将其添加到键盘 acc 中。

像这样声明标签

@property (strong, nonatomic) IBOutlet CBAutoScrollLabel *autoScrollLabel;

viewDidLoad

self.autoScrollLabel.text = @"This text may be clipped, but now it will be scrolled. This text will be scrolled even after device rotation.";
    self.autoScrollLabel.textColor = [UIColor blueColor];
    self.autoScrollLabel.labelSpacing = 35; // distance between start and end labels
    self.autoScrollLabel.pauseInterval = 1.7; // seconds of pause before scrolling starts again
    self.autoScrollLabel.scrollSpeed = 30; // pixels per second
    self.autoScrollLabel.textAlignment = NSTextAlignmentCenter; // centers text when no auto-scrolling is applied
    self.autoScrollLabel.fadeLength = 12.f;
    self.autoScrollLabel.scrollDirection = CBAutoScrollDirectionLeft;
    [self.autoScrollLabel observeApplicationNotifications];

然后,将代码添加到文本字段委托方法textFieldDidBeginEditing:,如下所示

-(void)textFieldDidBeginEditing:(UITextField *)textField
{
    textField.inputAccessoryView = self.autoScrollLabel;
}

最后,添加代码textFieldDidBeginEditing:如下

- (void)textFieldDidEndEditing:(UITextField *)textField
{
    textField.inputAccessoryView = nil;
}
于 2013-12-27T05:53:24.493 回答
0

当我认为它应该滚动时,我让文本不滚动。我发现,如果显示文本的标签宽度大于要显示的文本,它将不会滚动。这带来了显示的文本现在被“...”截断的问题它滚动,但它只显示文本直到并包括“...”正如预期的那样,这是设计使然,我不知道。除了这两个问题,这是一个非常好的功能。

于 2014-02-01T09:01:07.980 回答