kotlin改装要求成员声明错误



我将尝试使用NAVER Papago翻译API来改装POST。在MainActivity.kt文件的第30行中,出现错误Expecting member description,Name expected。我用错误名称进行了搜索,但无法解决,所以我提出了这个问题。

出现错误的部分如下。

callPostTransferPapago.enqueue(object:

这是MainActivity.kt.

package com.example.papagoapi
import android.content.ContentValues.TAG
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
val CLIENT_ID = "clientId"
val CLIENT_SECRET = "clientSecret"
val BASE_URL_NAVER_API = "https://openapi.naver.com/"
val retrofit = Retrofit.Builder()
.baseUrl(BASE_URL_NAVER_API)
.addConverterFactory(GsonConverterFactory.create())
.build()
val api = retrofit.create(NaverAPI::class.java)
val callPostTransferPapago = api.transferPapago(CLIENT_ID, CLIENT_SECRET, "ko", "en", "안녕하세요. 이것은 테스트입니다.")
callPostTransferPapago.enqueue(object: Callback<ResultTransferPapago>{
override fun onResponse(
call: Call<ResultTransferPapago>,
response: Response<ResultTransferPapago>
) {
Log.d(TAG, "성공: ${response.raw()}")
}
override fun onFailure(call: Call<ResultTransferPapago>, t: Throwable) {
Log.d(TAG, "실패: $t")
}
})
}

添加了已解析的代码。

package com.example.papagoapi
import android.content.ContentValues.TAG
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
import retrofit2.Retrofit
import retrofit2.converter.gson.GsonConverterFactory
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val CLIENT_ID = "id"
val CLIENT_SECRET = "secret"
val BASE_URL_NAVER_API = "https://openapi.naver.com/"
val retrofit = Retrofit.Builder()
.baseUrl(BASE_URL_NAVER_API)
.addConverterFactory(GsonConverterFactory.create())
.build()
val api = retrofit.create(NaverAPI::class.java)
val callPostTransferPapago = api.transferPapago(CLIENT_ID, CLIENT_SECRET, "ko", "en", "안녕하세요. 이것은 테스트입니다.")
callPostTransferPapago.enqueue(object: Callback<ResultTransferPapago>{
override fun onResponse(
call: Call<ResultTransferPapago>,
response: Response<ResultTransferPapago>
) {
Log.d(TAG, "성공: ${response.raw()}")
}
override fun onFailure(call: Call<ResultTransferPapago>, t: Throwable) {
Log.d(TAG, "실패: $t")
}
})
}
}

您需要将callPostTransferPapago.enqueue(...)调用放入某个活动生命周期方法,例如onCreate()

最新更新