上記のコードは問題ないように見えるので、iPhoneアプリの作成に関するチュートリアルから始めたいと思うかもしれません(私はこれを具体的に試していませんが)。以下で説明するいくつかのことを行う方法がわからない場合(またはいくつかの用語がなじみがない場合)は、良い本を入手するか、いくつかのチュートリアルを確認することをお勧めします。
本:iOS 6 SDK開発(Amazon)
チュートリアル:RayWenderlichのサイトには多くの優れたチュートリアルがあります
Appleのドキュメントはかなり良いです
あなたはおそらくプログラミングの方法を学びたいと思っているので、あなたのためにコードを書くだけでは意味がありません。誰かがあなたのためにそれをやってくれれば、あなたはあまり学びません。
これについて考える方法についてのいくつかの指針がありますが、あなたが望む行動はあなたが言ったことから完全には明らかではありません。
私があなたを理解しているなら、あなたはメインビューが表示されているときに2つの異なるアクションを起こさせたいと思っています。
まず、充電中/充電中の状態に合わせてフィールドにテキスト文字列を設定してみませんか?
したがって、Xcodeのメインビュー.xibファイルにUILabelを追加し、View Controllerでアウトレットを追加して、実行時にテキストを設定できるようにします。
次に、上の最初の行を1回呼び出して監視を開始し(パラメーターはYES)、もう一度NOを呼び出して、ビューが消えたら監視を停止します。上部にあるdeveloper.apple.comのドキュメントを見ると、UIViewController
UIViewControllerが実装するメソッドのリストが表示されます。この場合、おそらくオーバーライド(独自のバージョンを作成)viewWillAppear
して、YESとNOを使用しviewWillDisappear
た呼び出しをこれらの2つのメソッドにそれぞれ入れます。setBatteryMonitoringEnabled
これで、バッテリーステータスの監視の有効化/無効化が処理されます。次に、状態をテストしてアクションを実行する必要があります(これはbatteryState
上記のコードでの呼び出しです)。
説明から明らかではない設計に関する1つの質問は、ビューが表示されたときにこれを1回実行するのか、それとも状態を継続的に監視するのかということです。
一度やりたい場合はviewDidAppear
、たとえば、上記の呼び出しを入れてから、UILabelのアウトレットを使用して、ラベルのメッセージを「充電中」または「充電なし」に設定します。batteryState
方法。
充電状態の変化を監視するものが必要な場合は、通知をサブスクライブし、その通知のハンドラーでUILabel(または変更に応じて最終的に行うもの)を変更するコードを配置する必要があります。
これは、developer.apple.comまたはXcodeのOrganizerウィンドウの[Documentation]セクションにあるUIDeviceのドキュメントを読むことで理解できます。UIDevice
メソッドのドキュメントを読むbatteryMonitoringEnabled
と、「関連項目」セクションに、レベルまたは状態がいつ変更されるかを確認するためにサブスクライブできる通知の2つのエントリが含まれていることがわかり UIDeviceBatteryLevelDidChangeNotification
ますUIDeviceBatteryStateDidChangeNotification
。通知をサブスクライブする方法については、NSNotificationCenter
ドキュメントを参照してください。
次に、これが機能するようになったら、より洗練されたアラート(繰り返し表示するように注意してください!)とサウンド(バッテリーが充電されていないときにサウンドを再生すると、多少疑わしいバッテリーが使用されます)を追加できます。おそらく繰り返してください)。
幸運を!