質問編集履歴

2

ご回答をいただいての追記です。

2018/11/28 03:42

投稿

KumaChan
KumaChan

スコア37

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になってました。紛らわしいので修正します。

2018/11/28 03:42

投稿

KumaChan
KumaChan

スコア37

test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- RecyclerViewのクリック検知ですが、自分が調べた範囲では「setOnClickListenerはRecyclerViewのonCreateViewHolderに書く」とありました。手元のリファレンス本もその記述だったので正攻法かと思いますが、そうするとRecyclerAdapterをActivityから切り離している場合、Intentの発行ができません。setOnClickListenerをActivity側に書けばよいのかもしれませんが…
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
- RecyclerViewのonCreateViewHolderにsetOnClickListenerを置き、onClickでIntentを発行する方法について教えていただけないでしょうか。(上記コードでクリック位置を取得し、ログ表示するところまではうまくいっています。)
71
+ RecyclerAdapterのonCreateViewHolderにsetOnClickListenerを置き、onClickでIntentを発行する方法について教えていただけないでしょうか。(上記コードでクリック位置を取得し、ログ表示するところまではうまくいっています。)
72
72
 
73
73
 
74
74