質問編集履歴
2
ご回答をいただいての追記です。
test
CHANGED
File without changes
|
test
CHANGED
@@ -73,3 +73,41 @@
|
|
73
73
|
|
74
74
|
|
75
75
|
それはやはり不可能で、setOnClickListenerをActivity側に記述した方がよいという場合、クリック位置(position)を取得する方法についても教えていただけるとうれしいです。
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
追記
|
80
|
+
|
81
|
+
いただいた回答をもとにいろいろ試したところ、ふつうにIntentを渡せました。
|
82
|
+
|
83
|
+
putExtraも使えます。コンテキストを取得できればなんとでもなるんですね!
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
```ここに言語を入力
|
88
|
+
|
89
|
+
public RecyclerViewHolder onCreateViewHolder(@NonNull final ViewGroup viewGroup, int i) {
|
90
|
+
|
91
|
+
~中略~
|
92
|
+
|
93
|
+
view.setOnClickListener(new View.OnClickListener() {
|
94
|
+
|
95
|
+
@Override
|
96
|
+
|
97
|
+
public void onClick(View view) {
|
98
|
+
|
99
|
+
Context context = view.getContext();
|
100
|
+
|
101
|
+
Intent intent = new Intent(context, ActivityPhotosDetail.class);
|
102
|
+
|
103
|
+
intent.putExtra("name", "あああ");
|
104
|
+
|
105
|
+
context.startActivity(intent);
|
106
|
+
|
107
|
+
}
|
108
|
+
|
109
|
+
});
|
110
|
+
|
111
|
+
}
|
112
|
+
|
113
|
+
```
|
1
RecyclerAdapterがRecyclerViewになってました。紛らわしいので修正します。
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
RecyclerViewのクリック検知ですが、自分が調べた範囲では「setOnClickListenerはRecycler
|
5
|
+
RecyclerViewのクリック検知ですが、自分が調べた範囲では「setOnClickListenerはRecyclerAdapterのonCreateViewHolderに書く」とありました。手元のリファレンス本もその記述だったので正攻法かと思いますが、そうするとRecyclerAdapterをActivityから切り離している場合、Intentの発行ができません。setOnClickListenerをActivity側に書けばよいのかもしれませんが…
|
6
6
|
|
7
7
|
|
8
8
|
|
@@ -68,7 +68,7 @@
|
|
68
68
|
|
69
69
|
```
|
70
70
|
|
71
|
-
Recycler
|
71
|
+
RecyclerAdapterのonCreateViewHolderにsetOnClickListenerを置き、onClickでIntentを発行する方法について教えていただけないでしょうか。(上記コードでクリック位置を取得し、ログ表示するところまではうまくいっています。)
|
72
72
|
|
73
73
|
|
74
74
|
|