2010-04-28 83 views
0

我是iphone編程的新手。我在iTunes上瀏覽不同的應用程序。找到這個優秀的菜單。你能幫助我理解在技術上要做什麼來實現這個菜單。如何在頁面頂部有滑動菜單

用戶可以從左到右滑動此菜單,反之亦然,而不會打擾底部的視圖。如何實現這一目標?在此先感謝

alt text http://a1.phobos.apple.com/us/r1000/039/Purple/ed/2d/d7/mzl.uawcjxjf.320x480-75.jpg

alt text http://a1.phobos.apple.com/us/r1000/019/Purple/54/e1/08/mzl.usfrcvkh.320x480-75.jpg

回答

1

.H

IBOutlet UIScrollView *scrollView; 

@property (nonatomic , retain) IBOutlet UIScrollView *scrollView; 

-(void)AppleVijayAtFacebookDotCom:(id)sender; 

-(void)createMenuWithButtonSize:(CGSize)buttonSize withOffset:(CGFloat)offset noOfButtons:(int)totalNoOfButtons; 

.M

@synthesize scrollView; 



-(void)AppleVijayAtFacebookDotCom:(id)sender{ 


    NSLog(@"AppleVijayAtFacebookDotCom called"); 


    UIButton *button=(UIButton *)sender; 


    if (button.tag == 0) { 

     NSLog(@"hey have clicked first button, this is my tag : %i \n\n",button.tag); 
    } 
    else if (button.tag == 1) { 

     NSLog(@"hey have clicked second button, this is my tag : %i \n\n",button.tag); 

    } 
    // ......like this 

    NSLog(@"button clicked is : %iBut \n\n",button.tag); 



}  



-(void)createMenuWithButtonSize:(CGSize)buttonSize withOffset:(CGFloat)offset noOfButtons:(int)totalNoOfButtons{ 

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

    UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 

    [button addTarget:self action:@selector(AppleVijayAtFacebookDotCom:) forControlEvents:UIControlEventTouchUpInside]; 

     //[button1 setImage:[UIImage imageNamed:@"Button.png"] forState:UIControlStateNormal];//with image 

     //OR 

    [button setTitle:[NSString stringWithFormat:@"%iBut",i] forState:UIControlStateNormal];//with title 

    button.frame = CGRectMake(i*(offset+buttonSize.width), 8.0, buttonSize.width, buttonSize.height); 

    button.clipsToBounds = YES; 

    button.showsTouchWhenHighlighted=YES; 

    button.layer.cornerRadius = 10;//half of the width 

    button.layer.borderColor=[UIColor redColor].CGColor; 

    button.layer.backgroundColor=[UIColor blackColor].CGColor; 

    button.layer.borderWidth=2.0f; 

    button.tag=i; 

    [self.scrollView addSubview:button]; 

} 

self.scrollView.contentSize=CGSizeMake((buttonSize.width + offset) * totalNoOfButtons, buttonSize.height); 

    //self.navigationItem.titleView=self.scrollView;//if u have navigationcontroller then enable this line 

}

不要忘記了滾動連接在Interface Builder

在創建SCR在IB的ollview確保你的scrollView高度是44.這是默認導航bar.so它會看起來不錯。

in viewDidLoad call 

[self createMenuWithButtonSize:CGSizeMake(70.0, 30.0) withOffset:20.0f noOfButtons:30]; 

輸出

enter image description here