Android でデザイナーさんに1パターンしか素材を出してもらえず、じゃあ drawable-xxhdpi …となって、
drawable-xxhdpi はあるけど、他の画像パターンが無くて手動で変換するのめんどくさい!ということで勢いで書きました。
ImageMagickがあればどの環境でも動くとおもいます。
ImageMagickは Mac OS X なら HomeBrew で brew install ImageMagick とすればインストールできます。
Android でデザイナーさんに1パターンしか素材を出してもらえず、じゃあ drawable-xxhdpi …となって、
drawable-xxhdpi はあるけど、他の画像パターンが無くて手動で変換するのめんどくさい!ということで勢いで書きました。
ImageMagickがあればどの環境でも動くとおもいます。
ImageMagickは Mac OS X なら HomeBrew で brew install ImageMagick とすればインストールできます。
Android StudioからKotlinで開発していくうち、
ビルド、インストールしようとしても、何度やっても「Application Installation Failed」となってしまう問題に行き当たったので対策のメモです。
Intelli J IDEAでも遭遇するかもしれません。
Android Studio でRunボタンを押して、ビルド、エミュレータ・端末へのインストールが始まった後に、
こんなエラーに行き当たりました。
続きを読む Android Studio で Installation Failed と出る問題の解決方法
あるときからSMSメッセージを受け取れなくなってしまい、Xperia Z(SO-02E)の問題?と思って試行錯誤していたらドコモの設定でSMS拒否設定になっていたようです。
ドコモ側の設定で制限されているということは、Android, iPhoneなどの機種に関係なく発生する問題ですね。
SMSメッセージを送信できない、という方も、実は自分が受信できていないだけかもしれません。
解決方法として、SMSの受信設定の方法を画像付きで公開しておきます。
Android アプリケーション開発では、いつどのイベントが発生するかを知っておくというのは大事な事です。
アクティビティを実装する場合はアクティビティのイベントがいつ発生するか(ライフサイクル)が大事ですし、自分でビューを作る時はビューのイベントを把握しておくとスムーズに実装ができるようになります。
Androidのアクティビティについてはいつどのイベント公式サイトのアクティビティライフサイクルの項目で分かりやすく図示されているのですが、ビューのライフサイクル、イベントの詳細を見つけられなかったため、今回は整理も兼ねてこの記事を公開することにしました。
Android の View は Activity#setContentView() を呼ぶだけでも onFinishInflate(), onAttachedToWindow(),onLayout(),onDraw(),onMeasure()といったイベントが発生するのをご存知でしょうか?
どのタイミングでどのイベントが呼ばれるのか?
カスタムビューを作る時に処理をどのイベントに実装すべきかを悩んでいる方の助けになれれば幸いです。 続きを読む Android入門 アプリ開発の基本、ビューのライフサイクル(図解)

せっかくAndroidデザインのために頑張って画像にナインパッチ(9pach)を使ったのに、ちゃんと効かない。
画像の周りの黒い点が見えてしまってる。さぁどうしよう。
そんな時は騒がず慌てず4つのポイントをチェック。 続きを読む 【Android】9-patchが動かない?そんな時に確認する4つのポイント
画像のコストを下げるために、背景画像に tileMode=”repeat” を指定してタイルとして使っていたのですが、
Android 2.3 系以下の端末で特定のアクティビティでだけリピートが聞かなくてハマりました。
どうやらハニカムで修正されたOSの不具合だそうで…以下対策がわかったのでメモ。 続きを読む 【Android】背景画像のリピートが効かない問題
Javaでソート対応のマップと言えばTreeMapだけど、TreeMapはキーのソートにしか対応してません。
マップの値でのソートはオブジェクト外の要素でソートしたい時などは値でのソートが出来ると便利ですので、今回はその方法をご紹介します。
続きを読む 【Java】 Mapを値でソートする方法
StackOverflowでも”shouldOverrideUrlLoading(…) not executed if “window.location.href” modified in a timeout callback“と報告されているが、WebViewで JavaScript から location.href を書き換えると通常shouldOverrideUrlLoading()が反応するのに setTimeout()を使用して location.href を書き換えた場合は shouldOverrideUrlLoading() が呼ばれません。 続きを読む WebViewでshouldOverrideUrlLoading()が反応しない問題
「Google Android – 雑記帳」さんのTextView, ListViewの使い方についての記事がAndroid開発入門によさそうなドキュメントだったので紹介します。
Androidで正規表現を使っていて、全角のパターンマッチで少しはまったのでメモ。
Javaでは他の正規表現エンジンと同様、POSIX文字クラスが利用できます。
if("Hello".match("^\\p{Alpha}+$")){
System.out.println("アルファベットだけ!");
}