Pregunta

I have a scrollView who contain UIWebViews & UIImageViews. I need to update this views, but I can't access to their properties.

for (UIView *subview in _scrollView.subviews) {
      if([subView isKindOfClass:[UIImageView class]]){
          subview.image = myimage;
      }
      if([subView isKindOfClass:[UIWebView class]]){
          [subview loadData:mydata MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil];
      }
}

My iterator is a UIView, so I can't access to .image UIImageView properties...

Thanks

¿Fue útil?

Solución

Just use a cast expression:

((UIImageView*)subview).image = myimage;

(or:)

UIImageView *imageView = (UIImageView*)subview;
imageView.image = myimage;

Otros consejos

for (UIView *subview in _scrollView.subviews) {
      if([subView isKindOfClass:[UIImageView class]]){
          UIImageView *img = (UIImageView*)subView;
          img.image = myimage;
      }
      if([subView isKindOfClass:[UIWebView class]]){
          UIWebView *webView = (UUIWebView*)subView;
          [webView loadData:mydata MIMEType:@"application/pdf" textEncodingName:@"utf-8" baseURL:nil];
      }
}
for (id subview in _scrollView.subviews) {
  if([subView isKindOfClass:[UIImageView class]]){
      subview.image = myimage;
  }
  if([subView isKindOfClass:[UIWebView class]]){
      [subview loadData:mydata MIMEType:@"application/pdf" textEncodingName:@"utf-8"      baseURL:nil];
  }
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top