2010-03-06 39 views
0

我有一個演示工作,但我想知道是否已經有像這樣的控制類型的Three20庫。有沒有在Google或SO中列出的iPhone複選框列表控件?

這是我到現在爲止。它還沒有被重構。

-

(void)viewDidLoad { 
    [super viewDidLoad]; 

// Gets Types 
[self getTypes]; 

// Set Guilt Types UI 
CGFloat kTopMargin = 160.0; 
CGFloat kTopMarginSpan = 30.0; 

NSEnumerator *enumerator = [TypesArray objectEnumerator]; 
    id obj; 

    while (obj = [enumerator nextObject]) { 

    CGSize fontSize = [[obj name] sizeWithFont:[UIFont systemFontOfSize:22.0]]; 

    UILabel *aLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0, kTopMargin, fontSize.width, 25.0)]; 
    aLabel.font = [UIFont fontWithName:@"Helvetica" size:22.0]; 
    aLabel.adjustsFontSizeToFitWidth = YES; 
    aLabel.highlightedTextColor = [UIColor blackColor]; 
    aLabel.textAlignment = UITextAlignmentCenter; 
    aLabel.textColor = [UIColor colorWithRed:168/255.0 green:16/255.0 blue:16/255.0 alpha:1.0]; 
    aLabel.backgroundColor = [UIColor clearColor]; 
    aLabel.text = [obj name]; 
    [self.view addSubview:aLabel]; 
    [aLabel release]; 

    UIButton *aButton = [[UIButton alloc] initWithFrame:CGRectMake(fontSize.width + 10.0, kTopMargin + 5, 16.0, 16.0)]; 
    [aButton setBackgroundImage:[[UIImage imageNamed:@"checkbox.png"] stretchableImageWithLeftCapWidth: 12.0 topCapHeight: 0.0] forState:UIControlStateNormal]; 
    [aButton setBackgroundImage:[[UIImage imageNamed:@"chechbox-checked.png"] stretchableImageWithLeftCapWidth: 12.0 topCapHeight: 0.0] forState:UIControlStateSelected]; 
    [aButton setBackgroundImage:[[UIImage imageNamed:@"chechbox-pressed.png"] stretchableImageWithLeftCapWidth: 12.0 topCapHeight: 0.0] forState:UIControlStateHighlighted]; 
    [aButton setBackgroundColor:[UIColor clearColor]]; 
    aButton.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; 
    aButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentCenter; 
    [self.view addSubview:aButton]; 
    [aButton release]; 

    kTopMargin = kTopMargin + kTopMarginSpan; 

} 

} 

回答

3

一個UITableView與具有其accessoryType設置爲UITableViewCellAccessoryCheckmark細胞是這種風格

+0

我知道,但我有自己的UI在iPhone的標準,這就是爲什麼我希望有一個自定義的複選框列表所以我可以擁有自己的複選標記而不依賴iPhone的用戶界面。 – 2010-03-06 11:48:47

+0

如果你正在製作一個表格樣式的視圖,那麼'UITableView'(和公司)肯定是要走的路。不要重新發明輪子。如果你只想要自定義風格的複選框,只需創建你自己的'UIImageView'並將其分配給'accessoryView'屬性。 – rpetrich 2010-03-07 05:00:38

相關問題