如何在滚动视图上将按钮显示为网格,并点击按钮在下方显示更多标签

时间:2017-07-13 09:57:28

标签: ios objective-c

我有按钮的滚动视图,我想在所选按钮的下方显示更多标签,其余按钮移动到下一个位置 我是客观的c 请任何人都可以帮助我

我的代码在这里   UIScrollView * scrollView = [[UIScrollView alloc] initWithFrame:self.view.frame];     [self.view addSubview:scrollView];

for (int i = 0; i<83; i++){

    imageButton = [UIButton buttonWithType:UIButtonTypeCustom];
    [imageButton setTranslatesAutoresizingMaskIntoConstraints:YES];

   // [imageButton setBackgroundColor:[UIColor blackColor]];
    [imageButton setBackgroundImage:[UIImage imageNamed:@"books"] forState: UIControlStateNormal];

    [imageButton setTitle:[NSString stringWithFormat:@" %d",i]  forState:UIControlStateNormal];

    [imageButton setFrame:CGRectMake(xPossion, yPossion, 70, 60)];
    imageButton.highlighted=YES;
   [imageButton addTarget:self

                action:@selector(butnSelected:)
       forControlEvents:UIControlEventTouchUpInside];

    [scrollView addSubview:imageButton];


    xPossion += imageButton.frame.size.width+35;
    temp++;
    if (temp==3) {
        yPossion = imageButton.frame.origin.y+imageButton.frame.size.height+20;
        temp = 0;
        xPossion = 20;
        yPossion += imageButton.frame.size.width-15;
        [scrollView setContentSize:CGSizeMake(scrollView.frame.size.width ,yPossion-50)];
    }

}

我的目标设置为屏幕,如下面的enter image description here

当我点击一张图片时,我想显示下面的enter image description here

子类别

1 个答案:

答案 0 :(得分:0)

您可以将UISTackView用于您的目的。在一个堆栈视图中添加循环/类别按钮以及所有其他按钮。单击圆形/类别按钮隐藏/显示子类别按钮。堆栈视图的主要优点之一是它将自动为添加到其中的每个子视图创建自动布局约束。您还可以有限地控制这些子视图的大小和位置。可以选择配置视图的大小,应该在哪里排列它们,以及子视图之间应该有多少填充。

我也会尝试让你知道。