列出iOS所支持的字体
Objective-C #ios #字体2014-04-09 17:43
下面的例子以UITableView的形式显示出所支持的字体。
上代码。
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib.http://yige.org/ } - (void)viewDidUnload { [super viewDidUnload]; // Release any retained subviews of the main view. } - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown); } - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { //字体家族总数 return [[UIFont familyNames] count]; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { //字体家族包括的字体库总数 return [[UIFont fontNamesForFamilyName:[[UIFont familyNames] objectAtIndex:section] ] count]; } - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section { //字体家族名称 NSString * fontName = [[UIFont familyNames] objectAtIndex:section]; if([fontName isEqualToString:@"Menlo Regular"]||[fontName isEqualToString:@"Menlo Bold"]||[fontName isEqualToString:@"Zapf Dingbats"] ){ NSLog(@"%@",fontName); } return [[UIFont familyNames] objectAtIndex:section]; } - (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index { [tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:index] atScrollPosition:UITableViewScrollPositionMiddle animated:NO]; return index; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; } // Configure the cell. cell.textLabel.textColor = indexPath.row %2 ? [UIColor orangeColor] : [UIColor magentaColor]; //字体家族名称 NSString *familyName= [[UIFont familyNames] objectAtIndex:indexPath.section]; //字体家族中的字体库名称 NSString *fontName = [[UIFont fontNamesForFamilyName:[[UIFont familyNames] objectAtIndex:indexPath.section]] objectAtIndex:indexPath.row]; cell.textLabel.font = [UIFont fontWithName:fontName size:14.0f]; //查找微软雅黑字体Zapf Dingbats if([fontName isEqualToString:@"Menlo Regular"]||[fontName isEqualToString:@"Menlo Bold"]||[fontName isEqualToString:@"Zapf Dingbats"] ){ NSLog(@"%@",fontName); } cell.textLabel.text = [NSString stringWithFormat:@"%@ - %@", familyName, fontName ]; return cell; }