5

編集
これが起こるので、見ることができます:http://youtu.be/v1HrxYhzJZY


これが私のシナリオですUITableView。5 つのセクションと 12 のセルがあります。このビューは a で開かれ、push segueすべてが正常に機能し、スクロールなどが行われます。

MKMapViewこれらのセルのうち 3 つが( を介して) ビューを開き、push segue別のセルが をポップアップ表示しMFMailComposeViewControllerます。

元に戻ろうとするUITableViewと、一番下までスクロールできなくなりました。少ししかスクロールできず、テーブルビューの上部に戻ります。

フレーム サイズを に設定しようとしましたがviewWillAppear、 をリロードしようとしましたtableViewが、機能しません。
この問題の原因は何ですか?

編集
私の実装は次のとおりです。

- (void)viewDidLoad {
    loaded = NO;

    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"my_url", self.userID]];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
        loaded = YES;

        self.user = JSON;
        [self setUserValues];

        [self.tableView reloadData];

    } failure:nil];

    [operation start];

    [super viewDidLoad];
}

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    [self.tableView setContentSize:CGSizeMake(320, 420)];
}
4

6 に答える 6

7

私はこの簡単なコードでその問題を自分で解決しました:

- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];

    [self.tableView reloadData];
}

とにかくありがとう!

于 2012-12-28T20:33:43.900 に答える
5

このviewWillAppear:メソッドは、テーブル ビューをスクロールするには時期尚早です。ビューは、画面上のビュー階層に追加されておらず、レイアウトもされていません。でやってみてくださいviewDidLayoutSubviews

于 2012-12-23T15:37:29.910 に答える
1

から継承するtableViewをスクロールするにはUIScrollView、を使用する必要があります[self.tableView setContentOffset:CGPointMake(0,100) animated:YES];setContentSize

于 2012-12-23T21:56:26.383 に答える
1

次のコードを使用して、tableViewを目的のセクション/行にスクロールします。

[tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:desiredRow inSection:desiredSection] atScrollPosition:UITableViewScrollPositionTop animated:NO];
于 2012-12-23T15:30:07.160 に答える
1

私もこれを経験しました。子ビューから戻ると、テーブル ビューはスクロールできなくなりました (常に上部にバウンスしていました)。私の子ビューには、あなたのようなマップ ビューがありません。

テーブルビューをリロードしても解決しませんでした。

このバグは iOS 7 でのみ発生し、6.1 では発生しませんでした。

私はアクセスしていましtopLayoutGuideた...そのアクセスを削除すると(プロパティの読み取りだけです!)、問題が修正されました。なんてこった!魔法のプロパティでなければなりません。

于 2014-02-05T17:02:43.020 に答える