これおもしろい

らふにかいてこ

RecyclerViewで最後の行を中央揃えしたい

こういうのやりたい時

結論: FlexboxLayoutManagerを適用する

binding.recyclerView.layoutManager = FlexboxLayoutManager(requireContext()).also {
    it.flexDirection = FlexDirection.ROW
    it.justifyContent = JustifyContent.CENTER
}

github.com

行内の最大数の指定は出来ないから、幅計算してRecyclerViewの幅指定とかで実装するしかないのかな?

RecyclerView + Flexbox / Flow

アイテムの数が少ないのが明確なら

ConstraintLayout Flowで良さそう

<androidx.constraintlayout.helper.widget.Flow
    ...
    app:flow_wrapMode="chain"
    app:flow_horizontalStyle="packed"
    app:flow_maxElementsWrap="5"/>

アイテムの数が固定でないなら、programmaticallyにView作ってFlowのreferenceIdsに設定する


上2つを試したコードのPR
RecyclerView Multiline Centering by takattata · Pull Request #1 · takattata/TasksForStudy · GitHub (もしコードご覧になって、この書き方すると危ないのではなどお気づきの点あったら教えてください^^)

flexbox-layout初めて使ったなぁ

Codelabメモ: Cast-enable an Android app

f:id:takattata:20200303095800j:plain

残った疑問点

  • このアプリはSender AppでありReceiver Appであるということで良いの?
  • SessionManagerがCastSession以外を扱うことはある?
  • MiniControllerFragmentはvisibilityどう制御されてるの?(id変えても制御出来てた)

ここら辺確認しておこう
Google Cast Developer登録したし何か作ってみようかなぁ

心に残ってる技術書

ふと今まで読んだ技術書で何が好きだったかなーと振り返ってみました。(古い本ばかり)

2010年に購入してた!10年近く前かぁ。 専門学校時代の読んだ本で、これでページングとかの概念を理解しました。 難しいなーと頭を悩ませながら読み込んだ気がする。

これ読み通した記憶はあるんだけども、どうだったかな。 技術書で古めの本をこの時に初めて読んだから印象に残ってる。 PCの基礎を理解したいと思って、ここら辺でOSとかCPUとかの本を読み漁って挫折するのを繰り返してたなぁ。(OS自作入門やったり等々) これは実家で見つけたらもう一度読みたい。

ゲームプログラマになる前に覚えておきたい技術

ゲームプログラマになる前に覚えておきたい技術

これは絶対外せない本!

ゲームの専門学校入った年に出たんだったかなこの本。何度も読んだし辞書代わりにした。 本職の方がどういう事に気をつけながら作ると良いか踏まえつつゲームの作り方を教えてくれるありがたい本。

セットで思い出したゲーム系の本↓

  • ゲーム3D数学(初のオライリー本で表紙にうぇっとなった覚えがある)
  • ゲームエンジンアーキテクチャ(理解できなくて多分さらっとしか読んでない)
  • DirectX 9 シェーダプログラミングブック(描画まわりのパイプラインを学んだ記憶が)
  • ゲーム制作者になるための3Dグラフィックス技術(ゲームファンのための~の方か思い出せない...。レベル高すぎて全然わからないけどいちゲームファンとして読んでて楽しかった)

Unix/Linuxプログラミング理論と実践

Unix/Linuxプログラミング理論と実践

これたしか途中までしか読めてない...。 けど、手を動かしながらふむふむとやってたなぁ。 やめては読み直しをループするから最初ばかり記憶にある本。 コマンドをC言語で書いてみる→改良してみるみたいな流れで進んでいた気がする。 これは今も家にあるから来年こそは読み通そう。

Androidを支える技術〈I〉──60fpsを達成するモダンなGUIシステム (WEB+DB PRESS plus)

Androidを支える技術〈I〉──60fpsを達成するモダンなGUIシステム (WEB+DB PRESS plus)

完全把握には到底至れてないけど、この本大好き。 ログで見たことあるものの意味が分かったり点だった知識が繋がったり、すごく楽しい。 これ読むと以前途中でやめていたLinuxの勉強とかちゃんとやり直そうかなと思わせてくれる本。 やっぱりPDF版でも買おうかなぁ。(gihyouさんセールしないかなぁ) Androidの歴史を感じるコラムも好き。 背景知るとより理解が深まるものだなと再認識。

仕組みを知るのが好きなのかな自分。もっと深く本読んでいこうっと。

久しぶりにブログ書いてみたら、下書きどまりで時期が過ぎた記事が多くあることに気づいた。 一気に書かないとだねぇ。