way to start activity indicator on click event of button before its touch ends?
我正在通过我的应用程序上传图像。我使用了以下代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | -(IBAction)submitimage:(id)sender { // [activity startAnimating]; i started activity here but it starts after completion of function NSString *name, *comments; comments = txtcomment.text; name = @"Anonymous"; int r=random()%10000; NSLog(@"random number:%d",r ); NSString *imageName=[NSString stringWithFormat:@"Content-Disposition: form-data; name="dashboard"; filename="%d.jpg"\ \ ",r]; NSData *imageData = UIImageJPEGRepresentation(imge, 90); //NSLog(@"imagedata=%@",imageData); NSString *urlString =[NSString stringWithFormat:@"http://www.xyzsite.com/webservices/&comment=%@&name=%@",comments,name]; //NSLog(@"urlsubmit=%@",urlString); NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; [request setURL:[NSURL URLWithString:urlString]]; [request setHTTPMethod:@"POST"]; NSString *boundary = [NSString stringWithString:@"---------------------------14737809831466499882746641449"]; NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary]; [request addValue:contentType forHTTPHeaderField: @"Content-Type"]; /* body of the post */ NSMutableData *body = [NSMutableData data]; [body appendData:[[NSString stringWithFormat:@"\ \ --%@\ \ ",boundary] dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:[[NSString stringWithString:imageName] dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:[[NSString stringWithString:@"Content-Type: application/octet-stream\ \ \ \ "] dataUsingEncoding:NSUTF8StringEncoding]]; [body appendData:[NSData dataWithData:imageData]]; [body appendData:[[NSString stringWithFormat:@"\ \ --%@--\ \ ",boundary] dataUsingEncoding:NSUTF8StringEncoding]]; [request setHTTPBody:body]; NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil]; NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding]; NSLog(@"%@",returnString); } |
但是动画在功能结束后开始,所以还有其他方法可以启动活动指示器。在触摸事件结束之前。我在两个不同的上载图像应用程序中遇到相同的问题。所以如果有人知道,那么请让我知道
谢谢
对此可能有不止一种解决方案。但是,您可以将活动指示开始动画动作移至TouchDown事件,而将另一个留在" Touch up Inside"中。