2015-08-26 2 views
-4

Я искал решение от 3 дней, и у меня нет правильного. Я добавил 26 кнопок для экрана 5 секунд (программно), а также прокрутки, но после запуска найденного прокрутки не прокручивается ни на 5, ни на 4 с. вот код, который я использовал ...Программно добавлен UIScrollview не прокрутка

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 


    scrollview=[[UIScrollView alloc]initWithFrame:CGRectMake(0,0,320,568)]; 
    scrollview.showsVerticalScrollIndicator=YES; 
    scrollview.scrollEnabled=YES; 
    scrollview.userInteractionEnabled=YES; 
    scrollview.delegate=self; 
    scrollview.contentSize = CGSizeMake(320,568); 
    scrollview.backgroundColor=[UIColor blueColor]; 
    [self.view addSubview:scrollview]; 



    //BUtton--------Aa 


    UIButton *btnA=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnA.frame = CGRectMake(0, 0, 60, 60); 
    [btnA setTitle:@"First" forState:UIControlStateNormal]; 
    btnA.center=CGPointMake(40,55); 
    UIImage *img=[UIImage imageNamed:@"root.jpeg"]; 

    [btnA setImage:img forState:UIControlStateNormal]; 
    //btnA.center=CGPointMake(10,10); 

    [scrollview addSubview:btnA]; 


    //BUtton--------Bb 

    UIButton *btnB=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnB.frame = CGRectMake(0, 0, 60, 60); 
    [btnB setTitle:@"First" forState:UIControlStateNormal]; 

    UIImage *imgB=[UIImage imageNamed:@"root.jpeg"]; 

    [btnB setImage:imgB forState:UIControlStateNormal]; 
    btnB.center=CGPointMake(120,55); 

    [scrollview addSubview:btnB]; 





    //BUtton--------Cc 

    UIButton *btnC=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnC.frame = CGRectMake(0, 0, 60, 60); 
    [btnC setTitle:@"First" forState:UIControlStateNormal]; 

    UIImage *imgC=[UIImage imageNamed:@"root.jpeg"]; 

    [btnC setImage:imgC forState:UIControlStateNormal]; 
    btnC.center=CGPointMake(200,55); 

    [scrollview addSubview:btnC]; 


    //Button-----Dd 

    UIButton *btnD=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnD.frame = CGRectMake(0, 0, 60, 60); 
    [btnD setTitle:@"First" forState:UIControlStateNormal]; 

    btnD.center=CGPointMake(280,55); 



    UIImage *imgD=[UIImage imageNamed:@"root.jpeg"]; 

    [btnD setImage:imgD forState:UIControlStateNormal]; 

    [scrollview addSubview:btnD]; 


    //BUtton--------Ee 



    UIButton *btnE=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnE.frame=CGRectMake(0, 0, 60, 60); 
    [btnE setTitle:@"AlphaE" forState:UIControlStateNormal]; 
    btnE.center=CGPointMake(40, 120); 
    UIImage *imgE=[UIImage imageNamed:@"root.jpeg"]; 
    [btnE setImage:imgE forState:UIControlStateNormal]; 

    [scrollview addSubview:btnE]; 



    //BUtton--------Ff 

    UIButton *btnF=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnF.frame=CGRectMake(0, 0, 60, 60); 
    btnF.center=CGPointMake(120, 120); 
    UIImage *imgF=[UIImage imageNamed:@"root.jpeg"]; 
    [btnF setImage:imgF forState:UIControlStateNormal]; 
    [scrollview addSubview:btnF]; 



    //BUtton--------Gg 

    UIButton *btnG=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnG.frame=CGRectMake(0, 0, 60, 60); 
    btnG.center=CGPointMake(200, 120); 
    UIImage *imgG=[UIImage imageNamed:@"root.jpeg"]; 
    [btnG setImage:imgG forState:UIControlStateNormal]; 
    [scrollview addSubview:btnG]; 


    //BUtton--------Hh 

    UIButton *btnH=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnH.frame=CGRectMake(0, 0, 60, 60); 
    btnH.center=CGPointMake(280, 120); 

    UIImage *imgH=[UIImage imageNamed:@"root.jpeg"]; 
    [btnH setImage:imgH forState:UIControlStateNormal]; 

    [scrollview addSubview:btnH]; 



    //BUtton--------Ii 

    UIButton *btnI=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnI.frame=CGRectMake(0, 0, 60, 60); 
    btnI.center=CGPointMake(40, 185); 

    UIImage *imgI=[UIImage imageNamed:@"root.jpeg"]; 
    [btnI setImage:imgI forState:UIControlStateNormal]; 

    [scrollview addSubview:btnI]; 


    //BUtton--------Jj 




    UIButton *btnJ=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnJ.frame=CGRectMake(0, 0, 60, 60); 
    btnJ.center=CGPointMake(120, 185); 

    UIImage *imgJ=[UIImage imageNamed:@"root.jpeg"]; 
    [btnJ setImage:imgJ forState:UIControlStateNormal]; 

    [scrollview addSubview:btnJ]; 


    //BUtton--------Kk 


    UIButton *btnK=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnK.frame=CGRectMake(0, 0, 60, 60); 
    btnK.center=CGPointMake(200, 185); 

    UIImage *imgK=[UIImage imageNamed:@"root.jpeg"]; 
    [btnK setImage:imgK forState:UIControlStateNormal]; 

    [scrollview addSubview:btnK]; 


    //BUtton--------Ll 

    UIButton *btnL=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnL.frame=CGRectMake(0, 0, 60, 60); 
    btnL.center=CGPointMake(280, 185); 

    UIImage *imgL=[UIImage imageNamed:@"root.jpeg"]; 
    [btnL setImage:imgL forState:UIControlStateNormal]; 

    [scrollview addSubview:btnL]; 


    //BUtton--------Mm 


    UIButton *btnM=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnM.frame=CGRectMake(0, 0, 60, 60); 
    btnM.center=CGPointMake(40, 250); 

    UIImage *imgM=[UIImage imageNamed:@"root.jpeg"]; 
    [btnM setImage:imgM forState:UIControlStateNormal]; 

    [scrollview addSubview:btnM]; 


    //BUtton--------Nn 

    UIButton *btnN=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnN.frame=CGRectMake(0, 0, 60, 60); 
    btnN.center=CGPointMake(120, 250); 

    UIImage *imgN=[UIImage imageNamed:@"root.jpeg"]; 
    [btnN setImage:imgN forState:UIControlStateNormal]; 

    [scrollview addSubview:btnN]; 



    //BUtton--------Oo 

    UIButton *btnO=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnO.frame=CGRectMake(0, 0, 60, 60); 
    btnO.center=CGPointMake(200, 250); 

    UIImage *imgO=[UIImage imageNamed:@"root.jpeg"]; 
    [btnO setImage:imgO forState:UIControlStateNormal]; 

    [scrollview addSubview:btnO]; 

    //BUtton--------Pp 



    UIButton *btnP=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnP.frame=CGRectMake(0, 0, 60, 60); 
    btnP.center=CGPointMake(280, 250); 

    UIImage *imgP=[UIImage imageNamed:@"root.jpeg"]; 
    [btnP setImage:imgP forState:UIControlStateNormal]; 

    [scrollview addSubview:btnP]; 




    //BUtton--------Qq 



    UIButton *btnQ=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnQ.frame=CGRectMake(0, 0, 60, 60); 
    btnQ.center=CGPointMake(40, 315); 

    UIImage *imgQ=[UIImage imageNamed:@"root.jpeg"]; 
    [btnQ setImage:imgQ forState:UIControlStateNormal]; 

    [scrollview addSubview:btnQ]; 

    //BUtton--------Rr 

    UIButton *btnR=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnR.frame=CGRectMake(0, 0, 60, 60); 
    btnR.center=CGPointMake(120, 315); 

    UIImage *imgR=[UIImage imageNamed:@"root.jpeg"]; 
    [btnR setImage:imgR forState:UIControlStateNormal]; 

    [scrollview addSubview:btnR]; 


    //BUtton--------Ss 


    UIButton *btnS=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnS.frame=CGRectMake(0, 0, 60, 60); 
    btnS.center=CGPointMake(200, 315); 

    UIImage *imgS=[UIImage imageNamed:@"root.jpeg"]; 
    [btnS setImage:imgS forState:UIControlStateNormal]; 

    [scrollview addSubview:btnS]; 

    //BUtton--------Tt 

    UIButton *btnT=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnT.frame=CGRectMake(0, 0, 60, 60); 
    btnT.center=CGPointMake(280, 315); 

    UIImage *imgT=[UIImage imageNamed:@"root.jpeg"]; 
    [btnT setImage:imgT forState:UIControlStateNormal]; 

    [scrollview addSubview:btnT]; 

    //BUtton--------Uu 


    UIButton *btnU=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnU.frame=CGRectMake(0, 0, 60, 60); 
    btnU.center=CGPointMake(40, 380); 

    UIImage *imgU=[UIImage imageNamed:@"root.jpeg"]; 
    [btnU setImage:imgU forState:UIControlStateNormal]; 

    [scrollview addSubview:btnU]; 





    UIButton *btnV=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnV.frame=CGRectMake(0, 0, 60, 60); 
    btnV.center=CGPointMake(120,380); 

    UIImage *imgV=[UIImage imageNamed:@"root.jpeg"]; 
    [btnV setImage:imgV forState:UIControlStateNormal]; 

    [scrollview addSubview:btnV]; 




    UIButton *btnW=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnW.frame=CGRectMake(0, 0, 60, 60); 
    btnW.center=CGPointMake(200,380); 

    UIImage *imgW=[UIImage imageNamed:@"root.jpeg"]; 
    [btnW setImage:imgW forState:UIControlStateNormal]; 
    [scrollview addSubview:btnW]; 








    UIButton *btnX=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnX.frame=CGRectMake(0, 0, 60, 60); 
    btnX.center=CGPointMake(280, 380); 

    UIImage *imgX=[UIImage imageNamed:@"root.jpeg"]; 
    [btnX setImage:imgX forState:UIControlStateNormal]; 
    [scrollview addSubview:btnX]; 





    UIButton *btnY=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    btnY.frame=CGRectMake(0, 0, 60, 60); 
    btnY.center=CGPointMake(40, 445); 

    UIImage *imgY=[UIImage imageNamed:@"root.jpeg"]; 
    [btnY setImage:imgY forState:UIControlStateNormal]; 
    [scrollview addSubview:btnY]; 



    UIButton *btnZ=[UIButton buttonWithType:UIButtonTypeSystem]; 
    btnZ.frame=CGRectMake(0, 0, 60, 60); 
    btnZ.center=CGPointMake(120, 445); 


    UIImage *imgZ=[UIImage imageNamed:@"root.jpeg"]; 
    [btnZ setImage:imgZ forState:UIControlStateNormal]; 
    [scrollview addSubview:btnZ]; 


    //Menu Button---------->>>>>>>> 
    UIButton *Menu=[UIButton buttonWithType:UIButtonTypeSystem]; 
    Menu.frame=CGRectMake(0, 0, 60, 60); 
    Menu.center=CGPointMake(320/2.0, 530.0); 

    // Menu.center=CGPointMake(320.0/2.0, 510); 

    UIImage *menu1=[UIImage imageNamed:@"root.jpeg"]; 
    [Menu setImage:menu1 forState:UIControlStateNormal]; 
    [scrollview addSubview:Menu]; 

} 

я буду очень благодарен, если кто-нибудь поможет мне в этом. Спасибо заранее.

+0

Это позволит сэкономить много копий и вставок, чтобы поместить некоторые из вашего кода в цикл. – michaelrccurtis

+0

Вау, сначала убедитесь, что код отображается в виде кода при его отправке. Затем ваша проблема не связана с количеством добавляемой кнопки, поэтому уменьшите ее, просто добавив одну кнопку, требующую прокрутки для отображения (другими словами, уменьшите проблему, чтобы выделить проблему). – tomsoft

+0

«Я добавил 26 кнопок на 5 секунд экран (программно) "как насчет коллекции View? Добавить 26 кнопок на scrollView это нехорошо, и я вижу много копий-пасты в вашем коде)) –

ответ

0

попробовать это -

scrollview.contentSize = CGSizeMake(320,menu1.frame.origin.y+menu1.frame.size.height); 

menu1 ваши последние подтаблицы на свитке

0

Для 4s устройства:

scrollview=[[UIScrollView alloc]initWithFrame:CGRectMake(0,0,320,480)]; 
scrollview.setContentSize = CGSizeMake(320,568); 

Я думаю, что в течение 5 секунд не нужно scrollview.I думает, что все кнопки будут отображаться в представлении. Вам не нужно прокручивать его. Но если вы хотите добавить, то вы можете сделать это

scrollview=[[UIScrollView alloc]initWithFrame:CGRectMake(0,0,320,568)]; 
    scrollview.setContentSize = CGSizeMake(320,568); 
0

увеличить размер значения высоты содержимого на номер кнопки * высота каждой кнопки, что делает ваш Scrollview прокручивать до последнего содержания вы добавили

scrollview.contentSize = CGSizeMake(320,numberOfButtons*eachbuttonheight);

0

Благодарим вас за интерес, в конце концов я получил решение, которое я искал, ошибка я сделал, я добавил Scrollview к представлению, а затем добавили кнопки в Scrollview, что привело к неисправности, а не я добавили второе представление в scrollview и добавили кнопки ко второму виду, и, наконец, он сработал.

Смежные вопросы