サンプルコード
FragmentResultListenerは原則使わない方がいい。 DialogFragmentは呼び出し元のActivityやFragment自体にListenerを実装させ、結果を処理する方式がベスト。 DialogFragmentを部品ではなく機能として使用することで、結果を返さなくて良くなり、呼び出し元…
Androidの非同期処理にAsyncTaskやExecutorを使う事があるが、ワーカースレッドを作りworkerHandler.post()で実行する方法もある。 最近のマイブーム。 HandlerThreadはThreadを継承しているため、newしてstart()すれば、別スレッドでお手軽非同期処理ができ…
Excelの"取得と変換"(Power Query)でオープンデータを読み込む実験。
Google Cloud PlatformはAndroidアプリと連携する無料サーバになり得るのか実験してみた。Android Studioだけで開発する縛りプレイ。
レイアウトXMLでrotateとかをいじって実装していたが、コンテナの相対サイズで配置することが困難なため、AppCompatSeekBarを継承してVerticalSeekBarを実装した。 前提 minSdkVersion 21 implementation 'androidx.appcompat:appcompat:1.2.0' ソースコード…
前提条件 App Bundle使用 minifyEnabled true shrinkResources true compileSdkVersion 29 minSdkVersion 16 targetSdkVersion 29 multiDexEnabled true androidx.navigation:navigation-fragment:2.3.2 androidx.navigation:navigation-ui:2.3.2 FragmentCo…
App Bundleでリリースしたものの、Navigationのタイミングで即死するトラブルが発生。 Play Consoleのクラッシュログは以下の通り。 java.lang.RuntimeException: at android.view.animation.AnimationUtils.createAnimationFromXml (AnimationUtils.java:16…
以下、私見です。 ミュータブルはCollectionなどの事、イミュータブルはStringなどの事 Javaのcloneはオブジェクト構造のコピーが作られる。 構造体のコピーみたいな感じ。 Javaにおいてプリミティブ値は参照を持たないから値がコピーされ、 オブジェクトは…
設定.xmlのPreferenceタグにFragmentを指定すると別なPreferenceFragmentを起動できるが、Navigationを使用している場合うまく動作しない。 ちゃんと確認していないが、Navigationと複数画面のPreferenceの食べ合わせは非推奨らしい。 そこで、Navigationの…
ディレクトリを表すUriオブジェクトはあります。
自問 Javaでクラスの多重継承を行う方法を教えてください。 ベストアンサー Javaで多重継承はサポートされない。 public static class H { String h = "hour"; void echo(){ System.out.println(h); } } public static class O { String o = "o'clock"; void…
自問 Javaで複数の戻り値(タプル構造)を持つメソッドを定義する方法を教えてください。 ベストアンサー Javaのメソッドは1つの「プリミティブデータ型」または「クラス」しか返すことができない。 そこで、複数の値を持つクラスを返す方法を考える。 Java1.…
自問 Javaで16進数文字列を正しい数値及び数値型へ変換する方法を教えてください。 以下のコードはエラーになります。 Integer.parseInt("ffffffff", 16); //throws NumberFormatException Short.parseShort("ffff", 16); //throws NumberFormatException By…
自問 Javaで数値を16進数文字列へ変換する方法を教えてください。 ベストアンサー long型かint型の場合、Long.toHexString()またはInteger.toHexString()を使用する。 "0x"+Long.toHexString(-1L) //"0xffffffffffffffff" "0x"+Integer.toHexString(-1) //"0…
継承クラスが親クラスを破壊する方法
先日Android Studio 3.5 -> 3.6へアップデートして、新機能をチェックしていた中で、ひとつ目に留まったのがViewBinding。 build.gradle(app) android{ compileSdkVersion… : viewBinding.enabled = true : } これを追加すると、レイアウトファイルに対し…
Activityでオプションメニューを生成し、Fragmentからもオプションメニューを追加したいと思った時、 Fragment#onCreateOptionsMenu または Fragment#onPrepareOptionsMenu をオーバーライドするが、これだけでは不十分。 Fragment#onCreateView内でsetHasOp…
固定容量のHashSetが欲しくて、ググったらjavaのライブラリには無いみたいで、ArrayListを継承したりして実装する例があったが、Iteratorとか全部Overrideするとめんどくさい。 個人的に欲しかった機能は、固定容量のSetがあって、容量が足りなくなった時に…
作っているうちにアプリ名が変わったりして、GitHubのリポジトリ名を変えようと思ったら、 あれ?Android Studio側のリポジトリの参照ってどうやって変更するの? となった時のメモ。 git自体の知識がほぼ無いので、どういう事か説明できないのであしからず…
Executorは別スレッドで非同期処理をいくつも実行するのに役立つ。 ThreadPoolExecutorを使うとスレッドを再利用しつつ非同期処理を連続して行える。 Executor executor = new ThreadPoolExecutor( corePoolSize, //スレッド数 maximumPoolSize, //最大スレ…
Applicationクラスのライフサイクルめも 経緯 new Handler().postってアプリを離れても動いてる!!!!???? Applicationクラスのライフサイクルメソッド public void onCreate() アプリケーション起動時 public void onTerminate() エミュレート環境で…
プログラム上からAndroidManifest.xmlなどの設定値を参照する方法。 Activity activity = this; //例えばActivity内で実行した場合 Context context = activity; PackageManager packageManager = context.getPackageManager(); try { //アプリアイコン Draw…
タイトルは短すぎて意味が正確ではないかも。 「NavigationUIを使用している場合に、メニューから遷移可能な宛先画面(Destination)をリロードする。」 もし、NavigationUIを使っていないなら、NavController#navigateで遷移すればいいです。経緯 Android Stu…
ViewPagerのsetEnabledを設定してもスワイプを無効化できない。 そこでググったら code-examples.net 様々な方法を編み出してて笑った。 みんなViewPager好き過ぎ。 結局ViewPagerを継承し、setPagingEnabledを追加する方法を採用した。 //引用元 https://co…
Android Studio 3.5でアクティビティの新規作成から選べるテンプレートの「Navigation Drawer Activity」を読み解く。ついでにテンプレートのバグ退治もします。
abstract SubClass self(); //こういうことをしたい時の裏技
10人中10人「(# ゚Д゚)は?」
人知れずExcel2010でPower Queryとして実装され、Excel2016で取得と変換に改名。 世界のExcelユーザの99.99%が利用していないと思われる"取得と変換" 私は4年前に仲良くなれました。
ListViewでまさかの斜めスクロールを実現。Diagonal Scroll Sample Code!!
Androidでリスト形式のUIを使いたい場合、ListViewやGridViewが手ごろです。 しかし、データの表示には奇怪なAdapterクラスを使用しなければいけません。 個人的にAdapterはだいっっっっきらいですが、少しだけ打ち解けたのでサンプルコードを置いておきます…