私はxcodeにかなり慣れていないため、スクロールビューに問題があります。スクロールビューは正常に機能します...ただし、ストーリーボードとプッシュを組み合わせて使用すると問題が発生します。スクロールビューを最初に表示したときは正常に動作しますが、新しいページにプッシュしてからスクロールビューでストーリーボードに戻ると、スクロールしなくなります。これはdidloadと関係があると思いますが、おそらくwillappearを使用する必要がありますか?コードは以下です。このストーリーボードに戻るたびにストーリーボードをリロードするように、このコードを何らかの形で変更する必要があると思います...他の誰かがこの問題に遭遇したか、修正方法についてアドバイスしていますか?
//
// PrintViewController.m
//
//
#import "PrintViewController.h"
@interface PrintViewController ()
@end
@implementation PrintViewController
@synthesize PrintScroller, rememberContentOffset;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
[PrintScroller setScrollEnabled:YES];
// Do any additional setup after loading the view.
}
- (void) viewDidAppear:(BOOL)animated {
[PrintScroller setContentSize:CGSizeMake(300, 595)];
}
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:YES];
self.PrintScroller.contentOffset = CGPointMake(0, 0);
}
- (void)viewWillDisappear:(BOOL)animated {
self.rememberContentOffset = self.PrintScroller.contentOffset;
[super viewWillDisappear:animated];
}
- (void)viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
self.PrintScroller.contentOffset = CGPointMake(0, self.rememberContentOffset.y);
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end