我在我的應用程序中創建83個動態按鈕併爲其設置標籤。現在,我想爲相同的設置自動佈局。我怎樣才能爲此動態設置自動佈局?如何在iOS中爲多個動態按鈕和labell設置自動佈局?
這是我創建按鈕和標籤動態的實現代碼:
-(void)DynamicButton
{
//Reading Data From database
NSMutableArray *objectName = [[NSMutableArray alloc] init];
NSArray *docPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentDir = [docPaths objectAtIndex:0];
self.databasePath = [documentDir stringByAppendingPathComponent:@"SMS.sqlite"];
FMDatabase *database = [FMDatabase databaseWithPath:self.databasePath];
[database setLogsErrors:TRUE];
[database open];
//FMResultSet *results = [database executeQuery:@"SELECT * FROM SMSCategory"];
NSString *anQuery = [[NSString alloc]initWithFormat:@"SELECT *FROM SMSCategory"];
FMResultSet *results = [database executeQuery:anQuery];
while ([results next]) {
SMSCat1 *cat = [[SMSCat1 alloc]init];
cat.Id = [results stringForColumn:@"Id"];
cat.Name = [results stringForColumn:@"Name"];
cat.IsActive = [results stringForColumn:@"IsActive"];
[objectName addObject:cat];
}
[database close];
//Adding dynamic buttons
int yPossion = 150, xPossion = 44; int temp = 0;
UIScrollView *scrollView = [[UIScrollView alloc]initWithFrame:self.view.frame];
[self.view addSubview:scrollView];
for (int i = 0; i < [objectName count]; i++) {
SMSCat1 *cat = [objectName objectAtIndex:i];
UIButton *aButton = [UIButton buttonWithType:UIButtonTypeCustom];
[aButton setTranslatesAutoresizingMaskIntoConstraints:YES];
//Label Dynamic Code
UILabel *label = [[UILabel alloc] init];
[label setText:cat.Name];
[label setTextColor:[UIColor brownColor]];
label.font = [UIFont systemFontOfSize:12];
[label sizeToFit];
[label setFrame:CGRectMake(5, 44, 70, 60)];
[scrollView addSubview:label];
[aButton addSubview:label];
[aButton setBackgroundColor:[UIColor blackColor]];
[aButton setBackgroundImage:[UIImage imageNamed:@"icon-menu.png"] forState:UIControlStateNormal];
[aButton setTitle:[NSString stringWithFormat:@"%d", i] forState:UIControlStateNormal];
[aButton setFrame:CGRectMake(xPossion, yPossion, 70, 60)];
aButton.highlighted = YES;
[scrollView addSubview:aButton];
xPossion += aButton.frame.size.width + 35;
temp++;
if (temp == 3) {
yPossion = aButton.frame.origin.y + aButton.frame.size.height + 20;
temp = 0;
xPossion = 44;
yPossion += aButton.frame.size.width - 15;
[scrollView setContentSize:CGSizeMake(scrollView.frame.size.width, yPossion - 50)];
}
}
}
我想設置爲動態多個按鈕 – 2014-10-10 09:33:08