UITableViewCellで標準メールアプリのような、未読バッジを使う方法

UITableViewでiPhone標準メールアプリのような未読のバッジを表示させる方法です。
基本的には、テーブルでバッジを表示させるメソッドは用意されていませんので、自作することになります。が、ありがたいことに、既にオープンソースで公開されている「TDBadgedCell」があったので、これを組み込んでみます。
ダウンロードしたソースのうち
TDBadgedCell.h
TDBadgedCell.m
がバッジを表示するプログラムファイルです。
この2つを自分のプロジェクトに追加し、実装ファイル内でTDBadgedCell.hをインポート。
そして、cellForRowAtIndexPath内で
static NSString *CellIdentifier = @"Cell"; TDBadgedCell *cell = [[[TDBadgedCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease]; cell.textLabel.text = テキストを入れます; cell.textLabel.font = [UIFont boldSystemFontOfSize:14]; cell.detailTextLabel.text = 補足テキストを入れます; cell.detailTextLabel.font = [UIFont systemFontOfSize:13]; cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; cell.badgeString = [[contents objectAtIndex:indexPath.row] objectForKey:@"badge"]; //バッジの色も変更できます if (indexPath.row == 1) cell.badgeColor = [UIColor colorWithRed:1.000 green:0.397 blue:0.419 alpha:1.000]; return cell;
これで、バッジを実装することが出来ます。
ちなみに、バッジを表示させたくない行はcell.badgeString=nil;とします。
[sc name=”ios”][sc name=”engeneer”]
SHARE
無料メルマガ<特典付き>
個人開発・ビジネスについての有益な情報を無料メルマガでお届けします。
個人開発のスキルアップにMENTA
MENTAはいろんなプロに相談できるNo1メンターサービスです。
僕自身もプロダクトの壁打ち・相談にのっています。個人開発でもコードレビュー、セキュリティ面のチェック、デザイン、広告、コンテンツマーケ、SNS集客について相談する、など使えます。
YouTubeでも個人開発ノウハウを発信中!
PROFILE

入江 慎吾
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)