2012-03-09 4 views
1

ステータスバーのバッテリアイコンとレベルが正しく変更されているかどうかを確認したいので、バッテリアイコンリソースIDまたはステータスバーに完全なファイルパス/名前を取得します。Android:ステータスバーでバッテリーアイコンリソースIDまたは完全なファイルパス/名前を取得するにはどうすればよいですか?

私は、アイコンのリソースIDを取得するためにバッテリーManagerを使用してみました:

intent.getIntExtra(BatteryManager.EXTRA_ICON_SMALL, 0) 

著者が行ったようにしかし、私は同じ問題に遭遇しました: Android: access "system"-drawables

を、私は同じアイコンを取得し、そのパスは/res/drawable/stat_sys_battery.xmlですが、レベルは関係ありません。私は知りたいですなぜこのアイコンはステータスバーのアイコンと同じではありません?私の目標は、ステータスバーのアイコンを取得することです。

私はかなり長い間答えを探していましたが、このトピックのほとんどの記事はステータスバーのステータスとアイコンを取得する方法について質問しながら、ステータスバーのバッテリアイコンを変更することに関連していますアイコンを変更したい。

私を助けてください!前もって感謝します。

答えて

3

このアイコンがステータスバーのアイコンと同じでない理由を知りたいと思っています。

ステータスバーのアイコンであるため、ステータスバーのアイコンと同じです。バッテリレベルは、そのリソースに実装されているLevelListDrawableです。

独自のカスタムファームウェアを構築している場合を除いて、実際のLevelListDrawableオブジェクトにアクセスすることはできません。そのため、検査することはできません。

+0

ありがとうございました!私はこのアイコンがLevelListDrawableであることに気付かなかった!私がステータスバーから別のアイコンを取得した理由は、私が持っているのはデフォルトのアイコンだからです。 http://developer.android.com/reference/android/graphics/drawable/LevelListDrawable.htmlを参照してください。 – Ywis

関連する問題