Неразрешенная ссылка getResources () Kotlin - PullRequest
0 голосов
/ 19 октября 2018

Итак, я пытаюсь получить доступ к getResources () в моем коде, но по какой-то причине он продолжает получать неразрешенную ссылку.Я делаю это в другом классе для моего адаптера массива.Это потому, что у меня нет основного метода или по другим причинам?Я немного новичок в Android and Kotlin в целом, поэтому любая помощь будет признательна.

class ForecastAdapter(val forecast: Forecast) : RecyclerView.Adapter<ForecastData>(){
    override fun getItemCount(): Int {
        return forecast.list.count()

    }

    override fun onCreateViewHolder(p0: ViewGroup, p1: Int): ForecastData {
        val layoutInflator = LayoutInflater.from(p0?.context)
        val cellForRow = layoutInflator.inflate(R.layout.weather_row, p0, false)
        return ForecastData(cellForRow)

    }

    override fun onBindViewHolder(p0: ForecastData, p1: Int) {
        val drawableId: Int = getResources().getIdentifier("my_drawable", "drawable", getPackageName())
        val getWeather = forecast.list[p1]
        val clouds = getWeather.weather[0]
        val getDateTime = forecast.list[p1]
        var getIcon = forecast.list[p1]
        var icon = getIcon.weather[0]
        p0.view.textView_text_clouds.text = clouds.main
        p0.view.textView_date_time.text = getDateTime.dt_txt

    }

}

class ForecastData(val view: View): RecyclerView.ViewHolder(view){


}

1 Ответ

0 голосов
/ 19 октября 2018

Передайте контекст в качестве параметра в вашем адаптере, затем используйте вот так

 class ForecastAdapter(val forecast: Forecast,val context:Context)

, затем

 override fun onBindViewHolder(p0: ForecastData, p1: Int) {
    val drawableId: Int = context.getResources().getIdentifier("my_drawable", "drawable", getPackageName())
...