0

ボタンをクリックすると、画面の下部に多数のコントロール (カスタム ビュー) が追加されるアプリを開発しています。ボタンは何度でもクリックできます。だから私は一番下にコントロールを追加することになります。上にスクロールして、追加した数を数えたいと思います。カスタム ビューを 5 回追加するつもりだったとします。追加しました 4.スクロールアップ 追加した数を数えます。4つ追加したので、下にスクロールし、さらに1つ追加して上にスクロールし、保存/計算を行います。しかし、カスタム コントロールを追加した後、上にスクロールできません。画面には、最後に追加されたカスタム ビューが表示され、そこにとどまります。上にスクロールして、追加した回数を確認できません。私は何を間違っていますか?何かアイデアはありますか? 初めてクリックしてカスタムビューを追加すると、このコードが実行されます

ITMCustomView *customView = [[ITMCustomView alloc] initWithFrame:
    CGRectMake(187, 560, 400, 400)];
customView.delegate = self;
[self.scrollView addSubview:customView];

カスタム ビュー自体には、[さらに追加] ボタンがあります。それをクリックすると、上記のアクションが実行され、カスタム コントロールが再度追加されます。だから私は「さらに追加」でこれを行います

[self.delegate addNewSize:CGRectMake(187,self.y+ 400 , 400, 400)];

私がやっていることは、新しいカスタム ビューを作成する必要がある新しい場所を渡すことです。デリゲートがこのメソッドを起動するように

- (void)addNewSize:(CGRect)frame
{
    ITMCustomView *cView = [[ITMCustomView alloc] initWithFrame:frame];
    cView.delegate =self;
    CGPoint scrollPoint = CGPointMake(0.0, (frame.origin.y/500)*400);
    [self.scrollView setContentOffset:scrollPoint animated:YES];

    [self.scrollView addSubview:cView];
}

これは実際には私の質問の続きですiOS で一連のコントロールを動的に画面に追加します しかし、私は答えを受け入れました (これはその質問に対する真の答えです)。拡張機能であるため、新しい質問を開始したかったのです。さらに詳しい情報が必要な場合は、お問い合わせください。ありがとうございます...

4

1 に答える 1

1

setContentSizeを追加した後に使用する必要がありますITMCustomView。お気に入り

[self.scrollView setContentSize:CGSizeMake(320, 800)];

scrollView contentSizeを追加するたびに、動的に設定する必要がありますcustom view

于 2012-12-13T05:31:49.253 に答える