0

スクロールビューについて同様の質問が数十あることは知っていますが、すべてを試しましたが、Scrollviewスクロールしていません。

最初にuiviewcontrollerxib ファイルで を作成し、それをフリーフォームに設定してサイズを調整し、ビューにスクロールビューを追加しました。

ここに画像の説明を入力

次に、それchildviewcontrollerを別のView Controllerに追加しました。

-(void)scrollViewSetup
{
    if (!_scrollView) {
        _scrollView=[[UIView alloc] initWithFrame:CGRectMake(0,200,self.scrollView.frame.size.width,200)];
        [self.view addSubview:_scrollView];

        ScrollView *displayPortf=[[ScrollView alloc] init];
        //add as a child view controller here
        //displayPortf.delegate=(id)self;
        [_scrollView addSubview:displayPortf.view];
        [displayPortf didMoveToParentViewController:self];
        [self addChildViewController:displayPortf];
    }
}

スクロールビューのコンテンツサイズは(768,200)iPadです。に設定しようとcontent sizeしましたが(1920,200)viewDidLoadうまくいかず、うまくいかずviewDidAppear、うまくいきませviewDidLayoutSubviewsんでした。

次に、ボックスをチェックしuse auto layoutて、定数を追加しようとしましたeditor->resolve auto layout issues->add constraints

スクロールビューをスクロールするにはどうすればよいですか?

注: 親ビューは自動レイアウトとストーリーボードを使用します。

4

1 に答える 1

1

問題の理由は の幅がゼロだと思いscrollViewます。
これを呼び出すと:

_scrollView=[[UIView alloc] initWithFrame:CGRectMake(0,200,self.scrollView.frame.size.width,200)];

_scrollViewwidth で開始されますが、まだ開始されていない インスタンス変数に関連するため、self.scrollView.frame.size.width現時点では nil です。self.scrollView_scrollView

ビューの幅にゼロ以外の float 値を設定してみてください:
_scrollView=[[UIView alloc] initWithFrame:CGRectMake(0,200,768,200)];

于 2014-05-16T20:33:45.490 に答える