0

私は、UIView 内に UIScrollView があるプロジェクトを使用しています。UIScrollView 内では、3 列 X 行のボタンのリストを表示する必要があります。ボタンを表示するコードがありますが、UIScrollView に挿入されず、印刷されてスクロールしません。これに加えて、ビューの下部にある TabBar もカバーします。

ボタンを表示する関数のコードは

for (int y_axis=0; y_axis<=3; y_axis++)
    {
        for (int x_axis=0; x_axis<=2; x_axis++)
        {

            UIButton *btn=[[UIButton alloc] initWithFrame:CGRectMake(16+100*x_axis,100.0+115*y_axis,88.0 ,88.0)];
            btn.backgroundColor=[UIColor brownColor];
            [self.view addSubview:btn];

        }
    }

これを UIScrollView に表示するにはどうすればよいですか? ありがとう!!

4

4 に答える 4

2

UIScrollView スクローラーがあると仮定すると、最後の行をこれに変更する必要があります。

[self.scroller addSubview:btn];

そうでない場合は、スクローラーではなくビューに追加しています。また、スクローラーの contentsize を変更する必要があります。これは、含まれる量が X*Y の場合です。画面全体が含まれ、それ以上のものは含まれません。

[self.scroller setContentSize:CGSizeMake(320, 480)]
                                         ^     ^

それをスクロールしたい幅と高さに置き換えます。新しいボタンの下にボタンを追加するたびに、contentsize を更新する必要があります。

于 2012-05-14T09:58:49.543 に答える
1

最初に.hファイルにが必要ですUIScrollViewDelegate。次に、ボタンがyourScrollViewのサブビューであるかどうかを確認します。また、次のようなコードを使用して、このボタンをスクロールビューに追加します...

[yourScrollView addSubview:yourbuttonname];

その後、viewDidLoadメソッドで次のようにスクロールビューのcontentsizeを宣言します...

yourScrollView.contentSize=CGSizeMake(320, anyheight);///here define height which you want to scroll the view...

これがお役に立てば幸いです....:)

于 2012-05-14T10:03:23.570 に答える
1

次の手順を試してください。

    for loop
    {
        create buttons along with the desired frames;
        add those buttons to scrollview;
    }
    set the content size of the scrollview according to no of rows;
    add the scroll view to main view i.e. self.view;
于 2012-05-14T10:04:03.660 に答える
1

[self.view addSubview:btn];これは、 onではなくview にボタンを追加しているためですScrollView。すべてのボタンでビューを作成してみてください。のようにボタンでビューを設定しcontentviewますscrollview

于 2012-05-14T09:59:14.907 に答える