2015-11-01から1ヶ月間の記事一覧
この画像の、メニュー上部に戻るボタンやお気に入りボタンが並んだものを作ろうとしたわけですが… 方法 具体的な方法は調査中であるものの、どうやら PopupWindow もしくは ListPopupWindow を使ってゴリ押しで実装するしかないようです。 あまり面倒なこと…
Android 6.0 (Marshmallow, API level 23)に導入された Runtime permission に対応しようと思って調べたところ、インターネット接続に利用していた ACCESS_NETWORK_STATE と INTERNET は自動でパーミッションが付与される Normal Permissions という種類の権…
Android アプリではバージョン情報として versionCode と versionName があり、以下の様な形で gradle (app) で設定します。 defaultConfig { applicationId "com.example.increment" minSdkVersion 21 targetSdkVersion 23 versionCode 1 versionName "0.1"…
ProGuard を有効にした Signed apk を作成しようとした際に発生しました。 Error:Execution failed for task ':app:packageRelease'. > Unable to compute hash of (プロジェクトのフォルダ)\app\build\intermediates\classes-proguard\release\classes.jar …
原因は gson を使っていた + gson 用の ProGuard の設定をしていなかったことでした。ProGuard によって難読化されたことで serialize / deserialize 対象のタイプ、クラスが正しく参照できなくなってしまい例外を引き起こしていたようです。 参考先の progu…
今回の NavigationView については自分の場合は ProGaurd が原因で、以下の行を proguard-rules.pro に書き加えることで、実行時に表題の InflateException が発生することはなくなりました。 -keep class android.support.v7.widget.LinearLayoutManager { …
Overflow メニューに入れられたメニュー項目はそのままではアイコンが表示されませんが、以下の方法でアイコン表示を行うことができました。 コードで実現するバージョン 利点 標準的なメニューの見た目、挙動を保てる 欠点 Reflection を使用しているので将…
AndroidStudio でアプリを実機デバッグしようとした際に遭遇しました。 デバイスを抜き差しするだけでは直らず、 デバイスの USBケーブルを抜く AndroidStudio を終了する Waiting for process detach ダイアログが終わらなかったので強制終了 AndroidStudio…
& や | という記号ではなく and、or を使います。 また、|= や &= といった複合代入演算子形式の記載方法はありません。 Java/C系言語での書き方 Kotlin での書き方 x &= y x = (x and y) x |= y x = (x or y) x ^= y x = (x xor y) ~x x.inv() ※ and や or …
onCreateView で直接 SwipeRefreshLayout.setRefreshing(true) をしても表示されないので、post を使って少し遅らせてから refreshing が true になるようにします。 SwipeRefreshLayout の onMeasure が呼ばれて、サイズが確定してから refreshing を true …
やりたい事 方法 ピンチ操作によるズームイン / ズームアウトの有効化 webview.settings.builtInZoomControls = true ダブルタップによるズームイン / ズームアウトの有効化 webview.settings.useWideViewPort = true ズームボタン(右下に表示される±のルー…
ListView.setEmptyView で Empty View を設定していると、ListView が空の状態で SwipeRefresh (PullToRefresh) を実行すると Refresh の Indicator (上の方でくるくる回る、setRefreshing でコントロールされるもの)が、更新が終わった瞬間辺りに一瞬表示…
エラーメッセージ全文は以下のとおりです。 解決のために参考となる URL が記載されているなんて素晴らしい! Warning:Conflict with dependency 'com.android.support:support-annotations'. Resolved versions for app (23.1.0) and test app (22.2.0) dif…