ラベル supportal の投稿を表示しています。 すべての投稿を表示
ラベル supportal の投稿を表示しています。 すべての投稿を表示

2012年7月19日木曜日

みなさん、こんにちは。
いきなりですが日本代表応援アプリ、サポータルの
アプリ解説ページを始めます。

始めにスプラッシュ画面(アプリが立ち上がった時に表示される画面の事)
がありますが、見るだけで解説は必要ないかと思いますので
最初から省きます。
これはアップデートで変わりますから、見逃さないでほしい部分ではあります!
でも今回は省きます。





そして次の画面!ここから説明です。
こちら、応援ページという名前を付けております。
一番下の「supportal」部分には広告が入ります。
タップして見て頂けたら
すごく、すっごく、すごーーく(しつこいですね、すみません)助かります。

その上がタブバーです。
項目が4つ!今は一番左の拍手のアイコンの部分にいます。
アイコンの色が白じゃない所に居る、と覚えてください。

このページでは
次の対戦の日程相手、各メンバー、カレンダーに登録、チケットの情報がわかります。
メンバー(1,2)、iCalに登録(3)、チケット(4)は
別ページに飛びますので、それぞれ紹介していきましょう。




まず1番のメンバーを押すとこの画面!
日本代表の登録メンバーがわかります。
ただこれは直前にならないとわからない事が多いので
直前でわかり次第、変更します。
それまでは前回の試合に出場したメンバーになっています。
画面をスクロールして一番下にも注意文があるから見ていただけたら助かります。
拍手のアイコンをもう一度タッチで、元の画面に戻ります。





2番を押したらこの画面!
対戦国の登録メンバーです。
これもわかり次第の更新となります。



3番、iCalに登録するを押すとこの画面になります。
簡単にiCalに登録できますので、忘れないようにしよう!と思っている人は
通知など設定しているとWで助かると思いますよー。


そして最後、4番です。
こちら、チケットが購入できるJFA(日本サッカー協会)のwebサイトとなります。
Safariが立ち上がりますので、こちらから購入などを検討してください。
またサポータルアプリに戻る時にはダブルタップして下部からアプリを選んで頂くか
Safariを終了してからサポータルアプリを選択して戻ってきてくださいね。
お帰りをお待ちしております。

ということで次回はタブバーの左から二番目、布陣についての説明になります。

(この記事は、プログラム担当の方が書いてます。 前回も実はそうでしたw)
今回のアプリはタブ型のデザインでした。
広告も面白そうだし貼ってみようということになりました。

広告の場所は、操作中に目につく上部や、操作部分に割って入る形を避けたくて、下から広告・タブという順番としました。
そうすると、一番下にタブバーのある標準のTabBarViewControllerは使えません。

タブバーの代わりは、ボタンを並べて作ればいいだろうと安直に考えて実装をしてみました。 具体的には、各ViewControllerサブクラスに、同じようにボタンを並べました。 この方法だと、選ばれているタブのボタンを 色を変えたりすることもできて喜んでおりました。

この実装は、ここなどを参考にさせていただくことで、特に困らなかったです。
きちんと表示されるViewControllerが切り替わります。


ただ、広告を実装しはじめたところでハマリました。

アップルのガイドによると、各ViewControllerにバラバラに広告を貼るべきではないとのこと。切替の度に再読み込みになるので薦められないということのようです。
確かにそのとおりにチラチラしてます。 指摘されてからは、余計に気になります(笑)。

そこで、そもそも タブ型ってどうなってるの? と調べてみました。
ググって載ってる結果と微妙に違うの気もしているのですが、私の理解ではTabBarViewControllerに 高さを縮めた ViewControllerが乗っかっているイメージ。
つまり、出っぱなしの広告やタブボタンは TabBarViewController側に乗せればいいみたい と理解しました。

このイメージが湧いてからは、少しスムーズになりました。
TabBarViewControllerのサブクラスを作って、その上に広告とタブ切替のボタンを貼りました。 乗っけるViewControllerはロードタイミングで縮めておきます。
この方法で満足のいくものができました。

言葉では伝えにくいので絵を描いてみました。多少は分かりやすいでしょうか?




2012年7月18日水曜日

ちょっとネットを我流で泳いでいたら

iPhoneアプリ開発初心者の普通の大学生が、
1ヶ月ちょっとでiPhoneアプリをリリースするまでにやった事。
 - IT戦士への道

というのを見つけました。

なるほど。こういうのを書けばいいのかな?と思い、折角のloggterだから、
初めて今度リリースする予定のアプリを作るまでの軽いまとめを。

1. デザインしかできない「自分」

といっても私はプログラムは全くの初心者です。
オブジェクト?C??なにそれ楽しいの?な世界です。
本は……読みましたよ。眺めた、という方が近いかもですが(苦笑)

でもアプリをリリースしちゃうんです。
申請しているからあと一歩なんです。

どうすればできるのか、いやどうやって出来たのか。

2. 出会いは大切!「とある会社の部長さん」

それは……プログラムをできる人を見つけてお願いしたのです!
なんという発想!(ビフォーアフター風味)

それが「とある会社の部長さん」
たまに一緒に飲むお友達だったわけです。
この方、元々プログラマーだったらしく、C言語というのは知っていたらしい。
私と会う時には、そんな話しなかったから全然知らなかったというオチ。
まーあれですね。話のきっかけがないと
そんな事自らカミングアウトする人もいませんね。
いきなり話し始めても
「急に自分語り始めちゃった。何かあったの?病気なの?」
って思われちゃいますよね。

ということで、とある日にお茶というかお酒していた時に
「こんなアプリあればいいなー。」と思いついた訳です。
iPhoneは持っていたから、こういう動きはできる。
こういう事は楽しいんじゃないか?できたら嬉しい!という事で
その「とある会社の部長さん」にお話のネタとして振ってみたんです。

そしたら、話に乗ってくれたんですね。
実際に出来る、出来ないのレベルのお話をしてくれて。
まぁ話したら私のやりたい事はどれも実際に出来る事だったということで。
その話が盛り上がってしまって上限知らず。面白い事この上ないですね。
それも建設的に前向きにはなせる!! そりゃー楽しかったですよ。
お酒を飲み過ぎたかどうかは覚えてません(ペコリン

3. ではもっと調子に乗ってみよう!

ではもっと実現できるようにしてみようではないか。
ということで考えたのが自分の出来る事。

私は元々「グラフィックデザイナー」という職業をしているので
見栄えだけなら作れる。多分、そこそこ美しく作れる。
ということで、見栄えを作りました。

一応、本も読みました。参考になった本とかはまた別のお話で。

そして見栄えービジュアル?とでもいうのでしょうか?
そのビジュアルが出来上がったので、
またもや「とある会社の部長さん」に「こんな風になったよ、作ったよ」と
話のネタの続きで持って行ったワケで。
まぁ部長さんにしてみたら
「話のネタをちょっと膨らませて上げただけで
調子に乗ってこんな事やっていたんだ!あちゃー」
だったのかもしれませんね。
そして
「ここまでのせたのも自分が話を膨らませたからかなー。ちょっとやってみるか」
的な感じで部長さんは本を読みはじめましたね。そりゃ読む、読む。
ガンガン本を買って読み込んでいたらしい。
(申し訳ないから、本代はこちらで負担させていただいたものもあります)

4.  気づいたら部長さんも乗っていた!

しばらく静かだなー。と思っていたら
「さ、やってみるか!」
とおもむろにMacの前へ。
本を買ってちょっとしてからXcode自体は入れていたらしいけど、
実際にXcodeを使うのは、これが最初、くらいの勢いで。

ガツガツ、プログラムを始めたんですねー。
これにはしこたま驚いた!
Xcodeの本は読んでその中のチュートリアルはポチポチとやったけど、
その応用が全然わからない私でしたから。

それから連絡をとりあい、試行錯誤してもらって
約1ヶ月。
アプリを申請するまでに至りました。
アイデアを思いついたのが、6月半ばで
そこからデザインして見せたのが6月末(27日とか28日とか)。
7月1日あたりからプログラムして16日に完成。

5.  いい波が来たぞ!乗っとけビッグウェーヴ!

これは分担していたから出来た事だと思います。
あとは勢いかと……。

プログラムをしてもらっている間に
「ここはもう一度パーツを作り直す。(デザイン的に)」
とか
「これはこう作るからねー(プログラム的に)」
とか同時進行しましたので。

無事に申請できたのがこのアプリ。
アイコンを載せておきます。
「サポータル」です。
サッカー日本代表応援アプリです。
内容は……長くなったのでまた次回に。

2012年7月17日火曜日



ボタンを押された時に行う処理が少しだけ違うけど ほとんど同じという場合、処理をまとめて1つにしたくなるのがプログラマのサガ(笑)。

たとえば、supportalでは押したボタンに応じて、違うURLが開くというボタンがあります。 それを、ボタン自体がURLの情報を持っていて、ボタンが押された時の処理の中で、ボタンの自身がもつ情報で処理を切り替えるという設計をしたのです。


そうしたらハマリました。ガッツリっと(苦笑)。
具体的には、UIButtonのサブクラスMyUIButtonを作って、プロパティを追加したのです。 そうすると、ストールする現象にあいました。

しかも、ボタンの種類がUIButtonTypeCustomの時は問題ないのに、UIButtonTypeRoundedRectにするとストールする!

いくら考えても、意味不明。。。(角丸にしたらダメってどういうこと?? とハテナ飛びまくりです)


分からないものはしかたがないので、とりあえず、UIButtonTypeCustomで作ることにして先に進みました。




しばらくして、原因は基礎勉強中に判明しました。

ここに NSStringの例が乗っているのですが、UIButtonの場合もほぼ同じ。
UIButtonは、ほぼほぼFactory Methodとしてのクラスクラスタというデザインパターンで作られているみたい。ただし、純粋な抽象クラスではないところが、話を複雑にしているようでした。
 

つまり、私はMyUIButtonのインスタンスを作っているつもりだったのですが、違っていました。 たしかにUIButtonTypeCustomのスタイルの時は正しくMyUIButtonのインスタンスが作られていたけれど、UIButtonTypeRoundedRectにするとUIRoundRectButtonのインスタンスが作られてしまっていたのです。

当然、その時はUIButtonのサブクラスとして機能していないので、私が作ったプロパティを持っていない。 そこにアクセスするものだからストールしていたわけ。


で、どうしたか。。。 必ずUIButtonTypeCustomで作ることにしました。
原因が分かってもやってることは相変わらず(苦笑)。

まぁ、原因が分かってスッキリ!!が大事なのです。 たぶん(笑)

7月14日(土)、15日(日)、16日(月・海の日)とあっという間にすぎました。
この3日間に、無事にappleさんにアプリの申請が終わりました。

といっても私はStoreにのせるアイコン(512pixl x 512pixl)を用意し、
これは是非みてもらいたい!と思う画像をスクリーンショットで準備したり
Storeに載せる文章を作成したり、の係でした。

鉄は熱いうちに…ではありませんが
情熱のあるうちにアプリの説明などは作っておいた方がいい、ということで
ニュースリリースの準備もしました。
どこに配れば良いかはまだはっきりしておりませんが(苦笑

無事に見てもらえれば、来週の今頃には
初めてのアプリがみなさんの前にお披露目!ということになりますね。

ということで、それまでの間にアプリのサポートサイトの役割も果たす
当ブログですので、使い方などを説明しようと思います。

小分けになると思いますが、見ていただいて
最後には「このアプリを使いたい!!」と思っていただけるように。
がんばります!!!