RecyclerViewの実装

投稿日:  更新日:

RecyclerViewは子Viewを並べて表示するコンテナタイプ(ConstraintLayoutと同じ)のViewです。

複数のデータをスクリーン上に一覧表示したい時、例えば電話帳のような「氏名+住所+電話番号」の一覧を表示する場合などに最適です。

アプリを開発していると一覧表示したいデータが多いことに気付きます。

なのでRecyclerViewはとても重要で重宝するViewです。

しかし、思い通りの表示を行わせるためのテクニックが多すぎて、使いこなしが難しいです。

今まで調べたテクニックを忘れないように、整理して書き残そうと思います。

今回は基本の「RecyclerViewの実装」です。

続きを読む

NativeコードでOpenMPプログラミング

投稿日:  更新日:

KotlinコードをNativeコード(C/C++)に置き換えることで処理の高速化が期待できます。さらに高速化するにはマルチスレッド化が有効です。マルチコアCPUの能力を最大限に活用するのです。

このNativeコードをマルチスレッド化する手段にOpenMPがあります。

今回、画像処理を行う中でNativeコードを高速化する必要性が発生し、OpenMPを調査しました。

その成果として、Android NDKでOpenMPを使う方法とOpenMPプログラミングについて紹介します。

続きを読む

Nativeコード(NDK)でBitmapの画像処理

投稿日:  更新日:

Android NDKはNativeコードからBitmapを処理するためのグラフィックライブラリを実装しています。これを使うとBitmapが容易に扱えるので便利です。

画像はデータ量が多いため、画像処理や解析を行うと重い処理になってしまいます。Nativeコードで行えば高速化が出来ます。

また、JNI(Java Native Interface)があるので、Kotlin~Nativeコード間のデータ受け渡しの親和性が高い点もよいです。処理の指示を引数で渡したり、処理の結果をNativeコードの戻り値で返したりが簡単です。

今回、このライブラリを使ってBitmapの画像処理を行ってみたので紹介します。

続きを読む