0

好的,所以我已经在这个错误上工作了 2 个小时,并查看了我能找到的所有链接,这些链接也有我的问题。我试图将 UIImageView 放在 UIScrollView 中,然后在屏幕上显示滚动视图。当我尝试这样做时,什么都没有显示。所以首先我认为 imageview 没有要显示的图像,所以我通过将 imageView 添加到屏幕来测试这个

[self.view addSubview:mapDisplay];

并且显示了图像,但是当我将图像放在滚动视图中时,我仍然无法显示图像。

任何帮助都将得到应用。

.h 文件

#import <UIKit/UIKit.h>
#import "FloorsContainer.h"
@interface FloorMapViewController : UIViewController {
    UIImage* mapToShow;
    IBOutlet UIImageView *mapDisplay;
    IBOutlet UIScrollView *mapScrollView;
}
@property(nonatomic, retain) UIImageView *mapDisplay;
@property(nonatomic, retain) UIScrollView *mapScrollView;
-(void)setMapImage:(UIImage *) newMap;
@end

.m 文件

@interface FloorMapViewController ()
@end
@implementation FloorMapViewController
@synthesize mapDisplay, mapScrollView;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initializatio
    }
    return self;
}
-(void)setMapImage:(UIImage *) newMap {
    if (newMap != NULL) {
        mapToShow = newMap;
    }
}           
- (void)viewDidLoad {
    [super viewDidLoad];
    [super viewDidLoad];
    if (mapToShow != NULL) {
      //declare both scrollview and image view
        mapDisplay =[[UIImageView alloc] init];
        mapScrollView = [[UIScrollView alloc] init];
        //set size of both
        mapDisplay.frame = CGRectMake(0, 0, 320, 480);
        [mapScrollView setContentSize:CGSizeMake(mapDisplay.frame.size.width, mapDisplay.frame.size.height)];
        mapScrollView.contentMode = (UIViewContentModeScaleAspectFit);
        mapScrollView.clipsToBounds = YES;
        //set the picture
        [mapDisplay setImage:[UIImage imageNamed:@"Sci.jpg"]];
        //set zoom
        [mapScrollView setMinimumZoomScale:1.0];
        [mapScrollView setMaximumZoomScale:2.0];
        //combine the two
        [mapScrollView addSubview:mapDisplay];
        //set scroll pane to main window
        [self.view addSubview:mapScrollView];
    }
}

它确实进入了 if 语句。我相信这与我如何连接图像视图和滚动视图有关。(我对 iOS 开发人员还有些陌生,但我学得很快)。任何帮助将不胜感激。

4

1 回答 1

0

如果您认为它与您的连接方式有关,那么问题可能出在您的故事板或 nib 文件中。确保您只有一个插座连接到每个属性,并且不要超载您的插座。尝试删除它们并再次将您的插座重新连接到各个属性。

@properties 也应该是

@property(nonatomic, retain) IBOutlet UIImageView *mapDisplay;
@property(nonatomic, retain) IBOutlet UIScrollView *mapScrollView;
于 2013-09-30T14:59:28.137 回答