【发布时间】:2012-05-03 19:37:15
【问题描述】:
我遇到了问题。我无法想象为什么会发生这种情况,也许你们可以。
我在 IB 中创建了一个 UIBarButtonItem 并正确链接它。 A 设置属性并合成它。一开始我将 btn 设置为禁用(viewWillAppear)。 然后我尝试在我的 mysql 数据库中添加一个条目:
NSString *URLStr = [NSString stringWithFormat:@"http://www.justfortestingandsoon.com/example.php?entry=%@", myEntry];
URLStr = [URLStr stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
NSLog(@"URLStr: %@",URLStr);
NSURL *addURL = [NSURL URLWithString:URLStr];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:addURL cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:30.0];
urlConnectionSet = [NSURLConnection connectionWithRequest:urlRequest delegate:self];
在它的“didReceiveData...”中,我检查返回的是哪个值:
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
NSData *myData;
myData = data;
NSString *testString = [[NSString alloc] initWithData:myData encoding:NSASCIIStringEncoding];
NSLog(@"receivedData: %@", testString);
if ([testString isEqualToString:@"ENABLED"]) {
self.notificationBtnDeactivate.enabled = YES;
}
...
我已经调试过了。行 self.notificationBtnDeactivate.enabled = YES;被调用,但 UI 上没有任何明显的变化。
有什么想法吗?
非常感谢!
【问题讨论】:
-
我已经看到了 viewWillAppear 方法的“奇怪”行为。试试 viewDidLoad 或 viewDidAppear 看看这对你有没有影响。如果是这样,这可能指向 viewWillAppear 中的一些意外行为。公正和想法。
-
感谢您的帮助。但是,如果我将 viewWillAppear 方法排除在外,则“didReceiveData”方法也不会启用该按钮。 :(
标签: iphone nsurlconnection uibarbuttonitem