Третьи и другие последовательные кнопки UIB не будут отображаться в UIScrollView - PullRequest
0 голосов
/ 28 июня 2011

Добрый день, коллеги-программисты,

Прошло несколько часов с тех пор, как я пытался решить эту проблему. Я планирую создать вид меню, аналогичный тому, который есть в iOS-приложении Facebook. Проблема в том, что я могу добавить только два UIButtons в UIScrollView, третья и другие последовательные кнопки не будут отображаться. Я надеюсь, что вы могли бы помочь мне с этим.

Вот кодовый блок:

- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationController.navigationBarHidden = NO;
for (int i = 0; i < colors.count; i++) {
    CGRect frame;
    frame.origin.x = self.scrollView.frame.size.width * i;
    frame.origin.y = 0;
    frame.size = self.scrollView.frame.size;

    UIView *subview = [[UIView alloc] initWithFrame:frame];

    if(i == 0)
    {

        UIButton *button = [[UIButton buttonWithType:UIButtonTypeCustom] retain];    //Creates a UIButton

        button.frame = CGRectMake(25, 65, 70, 70); //sets the coordinates and dimensions of UIButton

        button.backgroundColor = [UIColor clearColor]; //sets the background color

        [button addTarget:self action:nil forControlEvents:UIControlEventTouchUpInside]; //sets the target and action for the button

        [button setBackgroundImage:[UIImage imageNamed:@"Message Board Icon-57.png"] forState:UIControlStateNormal]; //sets the background Image


        [subview addSubview:button];
        [button release];

        UIButton *button2 = [[UIButton buttonWithType:UIButtonTypeCustom] retain]; //Creates a UIButton

        button2.frame = CGRectMake(125, 175, 70, 70); //sets the coordinates and dimensions of UIButton

        button2.backgroundColor = [UIColor clearColor]; //sets the background color

        [button2 addTarget:self action:nil forControlEvents:UIControlEventTouchUpInside]; //sets the target and action for the button

        [button2 setBackgroundImage:[UIImage imageNamed:@"Profile Page Icon-57.png"] forState:UIControlStateNormal]; //sets the background Image

        [subview addSubview:button2];
        [button2 release];


        UIButton *button3 = [[UIButton buttonWithType:UIButtonTypeCustom] retain]; //Creates a UIButton

        button3.frame = CGRectMake(125, 65, 70, 70); //sets the coordinates and dimensions of UIButton

        button3.backgroundColor = [UIColor clearColor]; //sets the background color

        [button3 addTarget:self action:nil forControlEvents:UIControlEventTouchUpInside]; //sets the target and action for the button

        [button3 setBackgroundImage:[UIImage imageNamed:@"iCalendar Icon-57.png"] forState:UIControlStateNormal]; //sets the background Image


        [subview addSubview:button3];
        [button3 release];


    } 
    [subview release];
}

self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * colors.count, self.scrollView.frame.size.height);

}

1 Ответ

0 голосов
/ 28 июня 2011

Вы должны добавить вас UIView *subview к scrollView, чтобы показать его в этом, а также кнопки.просто сделай, [scrollView addSubview:subView];

...