メニューの項目や階層構造をアプリのリリース後に自由に変更できるようにしたいことがあります。 基幹系アプリの場合によくある理由として 常時通信環境で運用するわけではない 運用してみないとよりよいメニュー構造がわからない iOS技術者ではない運用者がメニュー階層を簡単に弄りたい WebViewでは野暮ったい などなど 確かにメニュー階層はアプリ使い勝手を左右する重要な部分なのでよく納得できる内容です。 今回、メニュー構成(plist)をWeb上に配置して自由にカスタマイズできるような実装を行なってみました。要件としては下記のような感じです。 UITableViewのメニュー情報は全て外部リソース(Menu.plist)に保持する 初回は通信からメニュー情報を読込キャッシュして、次回移行はキャッシュから読み込む メニューの情報は手動で通信してアップデートする 若干変態的なのですがメニューはUIT
![サーバから自由にカスタマイズ可能なメニューを実装する - 中継地点](https://cdn-ak-scissors.b.st-hatena.com/image/square/c90d069b23cabc628ffc0b3db043e47b1a94ad33/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fh%2Fh_mori%2F20121017%2F20121017020151.png)