diff options
Diffstat (limited to 'app/src/main/java/mygram/droid/HomeRows.java')
| -rw-r--r-- | app/src/main/java/mygram/droid/HomeRows.java | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/app/src/main/java/mygram/droid/HomeRows.java b/app/src/main/java/mygram/droid/HomeRows.java index 6105c1c..9615f6f 100644 --- a/app/src/main/java/mygram/droid/HomeRows.java +++ b/app/src/main/java/mygram/droid/HomeRows.java @@ -17,7 +17,9 @@ package mygram.droid; import android.app.Activity; import android.content.Context; +import android.view.Gravity; import android.view.ViewGroup; +import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; @@ -34,12 +36,14 @@ final class HomeRows extends RecyclerView.Adapter<HomeRows.Row> { static final class Row extends RecyclerView.ViewHolder { final TextView title; + final ImageView avatar; final RecyclerView tiles; /** Backing list of the row's one adapter: rebinds refill it instead of replacing the adapter. */ final List<TileAdapter.Tile> list = new ArrayList<>(); - Row(LinearLayout v, TextView title, RecyclerView tiles) { + Row(LinearLayout v, ImageView avatar, TextView title, RecyclerView tiles) { super(v); + this.avatar = avatar; this.title = title; this.tiles = tiles; tiles.setAdapter(new TileAdapter(list, Ui.POST_W, Ui.POST_H)); @@ -62,19 +66,26 @@ final class HomeRows extends RecyclerView.Adapter<HomeRows.Row> { v.setOrientation(LinearLayout.VERTICAL); v.setLayoutParams(new RecyclerView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)); + LinearLayout head = new LinearLayout(c); + head.setGravity(Gravity.CENTER_VERTICAL); + head.setPadding(Ui.dp(c, 36), Ui.dp(c, 16), 0, 0); + ImageView avatar = Ui.avatar(c, 32); + ((LinearLayout.LayoutParams) avatar.getLayoutParams()).rightMargin = Ui.dp(c, 12); + head.addView(avatar); TextView title = Ui.text(c, "", 18); - title.setPadding(Ui.dp(c, 36), Ui.dp(c, 16), 0, 0); - v.addView(title); + head.addView(title); + v.addView(head); RecyclerView tiles = Ui.list(c, RecyclerView.HORIZONTAL); v.addView(tiles, new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, Ui.dp(c, Ui.POST_H + 24))); - return new Row(v, title, tiles); + return new Row(v, avatar, title, tiles); } @Override public void onBindViewHolder(Row row, int position) { Api.Folder f = folders.get(position); row.title.setText(f.name); + Ui.setAvatar(row.avatar, f.avatarUrl); List<Post> posts = samples.get(f.slug); if (posts == null) { posts = List.of(); |
