質問編集履歴

4

情報の修正

2019/10/05 06:55

投稿

takepon0209
takepon0209

スコア34

test CHANGED
File without changes
test CHANGED
@@ -200,7 +200,7 @@
200
200
 
201
201
 
202
202
 
203
- private var callbacktask: CallBackTask? = null
203
+ var callbacktask: CallBackTask? = null
204
204
 
205
205
 
206
206
 
@@ -252,7 +252,7 @@
252
252
 
253
253
  */
254
254
 
255
- inner class CallBackTask {
255
+ open inner class CallBackTask {
256
256
 
257
257
  open fun CallBack(result: String) {}
258
258
 
@@ -274,13 +274,7 @@
274
274
 
275
275
  下記が表示されます。
276
276
 
277
- > Type mismatch.
278
-
279
- Required:
280
-
281
- TestActivity.AsyncTaskClass.CallBackTask
277
+ > Unresolved reference: CallBackTask
282
-
283
- Found:
284
278
 
285
279
 
286
280
 
@@ -298,4 +292,4 @@
298
292
 
299
293
 
300
294
 
301
- ![イメージ説明](af318bd850a9da456d9822287ae16708.jpeg)
295
+ ![イメージ説明](66e17cb008d7e68f90a42d118cc1e6fa.jpeg)

3

情報の追記

2019/10/05 06:54

投稿

takepon0209
takepon0209

スコア34

test CHANGED
File without changes
test CHANGED
@@ -288,8 +288,14 @@
288
288
 
289
289
  引用元
290
290
 
291
- https://qiita.com/a_nishimura/items/1548e02b96bebd0d43e4
291
+ [https://qiita.com/a_nishimura/items/1548e02b96bebd0d43e4
292
+
293
+ ](https://qiita.com/a_nishimura/items/1548e02b96bebd0d43e4)
292
294
 
293
295
 
294
296
 
295
297
  よろしくお願いします。
298
+
299
+
300
+
301
+ ![イメージ説明](af318bd850a9da456d9822287ae16708.jpeg)

2

情報の追記

2019/10/05 06:49

投稿

takepon0209
takepon0209

スコア34

test CHANGED
File without changes
test CHANGED
@@ -146,6 +146,146 @@
146
146
 
147
147
 
148
148
 
149
+ kotlinに直したコードが下記になります。
150
+
151
+ ```kotlin
152
+
153
+ class MainActivity : Activity() {
154
+
155
+
156
+
157
+ override fun onCreate(savedInstanceState: Bundle?) {
158
+
159
+ super.onCreate(savedInstanceState)
160
+
161
+ setContentView(R.layout.activity_main)
162
+
163
+
164
+
165
+ val atClass = AsyncTaskClass()
166
+
167
+ atClass.setOnCallBack(object : AsyncTaskClass.CallBackTask() {
168
+
169
+
170
+
171
+ override fun CallBack(result: String) {
172
+
173
+ super.CallBack(result)
174
+
175
+ // ※1
176
+
177
+ // resultにはdoInBackgroundの返り値が入ります。
178
+
179
+ // ここからAsyncTask処理後の処理を記述します。
180
+
181
+ Log.i("AsyncTaskCallback", "非同期処理が終了しました。")
182
+
183
+ }
184
+
185
+
186
+
187
+ })
188
+
189
+
190
+
191
+ // AsyncTaskの実行
192
+
193
+ atClass.execute()
194
+
195
+ }
196
+
197
+
198
+
199
+ class AsyncTaskClass : AsyncTask<Void, Void, String>() {
200
+
201
+
202
+
203
+ private var callbacktask: CallBackTask? = null
204
+
205
+
206
+
207
+ override fun onPreExecute() {
208
+
209
+ super.onPreExecute()
210
+
211
+ }
212
+
213
+
214
+
215
+
216
+
217
+ override fun doInBackground(vararg params: Void): String? {
218
+
219
+ return null
220
+
221
+ }
222
+
223
+
224
+
225
+
226
+
227
+ override fun onPostExecute(result: String) {
228
+
229
+ super.onPostExecute(result)
230
+
231
+ callbacktask!!.CallBack(result)
232
+
233
+ }
234
+
235
+
236
+
237
+
238
+
239
+ fun setOnCallBack(_cbj: CallBackTask) {
240
+
241
+ callbacktask = _cbj
242
+
243
+ }
244
+
245
+
246
+
247
+
248
+
249
+ /**
250
+
251
+ * コールバック用のstaticなclass
252
+
253
+ */
254
+
255
+ inner class CallBackTask {
256
+
257
+ open fun CallBack(result: String) {}
258
+
259
+ }
260
+
261
+
262
+
263
+
264
+
265
+ }
266
+
267
+ }
268
+
269
+ ```
270
+
271
+
272
+
273
+ エラーですが、「object : AsyncTaskClass.CallBackTask()」の部分で
274
+
275
+ 下記が表示されます。
276
+
277
+ > Type mismatch.
278
+
279
+ Required:
280
+
281
+ TestActivity.AsyncTaskClass.CallBackTask
282
+
283
+ Found:
284
+
285
+
286
+
287
+
288
+
149
289
  引用元
150
290
 
151
291
  https://qiita.com/a_nishimura/items/1548e02b96bebd0d43e4

1

誤字

2019/10/05 06:45

投稿

takepon0209
takepon0209

スコア34

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- 下記、ansroidの非同期処理のソースコードですが、
1
+ 下記、androidの非同期処理のソースコードですが、
2
2
 
3
3
  kotlinに変換したらどのようになるでしょうか?
4
4