2017-01-23 2 views
0

Я получаю следующее сообщение об ошибке:

android.content.res.Resources$NotFoundException: String resource ID #0x0 

Я просто создать список номеров с помощью RecyclerView:

import android.content.Context; 
import android.support.v7.widget.RecyclerView; 
import android.util.Log; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.TextView; 

public class SongRVAdapter extends RecyclerView.Adapter<SongViewHolder> { 
    private Context context; 

    public SongRVAdapter(Context context) { 
     this.context = context; 
    } 


    @Override 
    public SongViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
     LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     View view = inflater.inflate(R.layout.song_info_row, parent, false); 

     return new SongViewHolder(view); 
    } 

    @Override 
    public void onBindViewHolder(SongViewHolder holder, int position) { 
     Log.d("CodeKamp", "onBindViewHolder called for position " + position); 
     holder.titleTextView.setText(position); 
     holder.durationTextView.setText("00:" + position); 
    } 

    @Override 
    public int getItemCount() { 
     return 10; 
    } 
} 
+2

спросил bazillion раз 'TextView.setText' с int как параметр нужен существующий идентификатор строкового ресурса ... вы передаете 0, который не является допустимым идентификатором ресурса строки ... – Selvin

ответ

2

Вы не можете передать int значения setText() , иначе он попытается найти ресурс String, соответствующий этому int ID. Так

holder.titleTextView.setText(position); 

должен быть изменен на

holder.titleTextView.setText(String.valueOf(position)); 

position преобразовать в строку.

Смежные вопросы