[英]UIButton title label delay
我在設置按鈕的標題標簽時遇到問題。 基本上我有2個屏幕,它們都有這個按鈕,但兩者都寫有不同的“數字”。 發生的事情是,在按鈕標題准確反映我所在的屏幕之前,有1-2秒的非常明顯的延遲。 我試着把[self.button reloadInputViews];
但它仍然沒有重新加載它,我仍然得到延遲。
[self.button setTitle:[NSString stringWithFormat:@"%d", [stringValue integerValue]]
forState:UIControlStateNormal];
有人知道如何強制按鈕刷新它的標題標簽嗎? 謝謝您的幫助!
編輯:更多上下文代碼
self.guestsField = [UIButton buttonWithType:UIButtonTypeRoundedRect];
self.guestsField.frame = CGRectMake(self.guestsLabel.frame.origin.x + self.guestsLabel.frame.size.width, 100, 40, 30);
self.guestsField.titleLabel.font = [UIFont systemFontOfSize:20];
[self.guestsField addTarget:self action:@selector(pressGuestsField:) forControlEvents:UIControlEventTouchDown];
[self.view addSubview:self.guestsField];'
myFunction的{
NSDictionary * dict = [通知userInfo];
if ([dict count] > 0)
{
[self.guestsField setTitle:[NSString stringWithFormat:@"%d", [GetOrder.NumberOfGuests integerValue]] forState:UIControlStateNormal];
}
}
修復它:在不同的線程上運行myFunction。 剛剛在主線程dispatch_sync(dispatch_get_main_queue(), ^{
中執行了setTitle dispatch_sync(dispatch_get_main_queue(), ^{
如果您等待設置標簽,直到從服務器檢索數據,這似乎是您延遲的原因。 注釋掉您的網絡代碼,看看您的標簽是否立即更新。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.