Error 내역
E/AndroidRuntime: FATAL EXCEPTION: main
android.content.res.Resources$NotFoundException: Resource ID #0x7f070074 type #0x12 is not valid
at com.example.myapplication.MainAdapter.onCreateViewHolder(MainAdapter.java:48)
at com.example.myapplication.MainAdapter.onCreateViewHolder(MainAdapter.java:16)
MainAdapter.java
import android.annotation.SuppressLint;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.recyclerview.widget.RecyclerView;
import io.realm.Realm;
import io.realm.RealmQuery;
import io.realm.RealmResults;
public class MainAdapter extends RecyclerView.Adapter<MainAdapter.ViewHolder> {
int year, month;
//메모의 문자열을 저장하기 위한 배열
String[] memos = new String[31];
public MainAdapter(int year, int month) {
this.year = year;
this.month = month;
//메모 객체를 저장하기 위한 변수
RealmResults<Memo> results;
//Realm DB에 저장된 메모들의 Query를 이용해 해당 연,월의 memo리스트를 불러온다.
Realm realm = Realm.getDefaultInstance();
RealmQuery<Memo> query = realm.where(Memo.class);
results = query
.equalTo("year", year)
.equalTo("month", month)
.findAll();
for(Memo m : results) {
memos[m.getDate()-1] = m.getMemo();
}
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//리스트 아이템의 레이아웃 연결
@SuppressLint("ResourceType") View v = LayoutInflater.from(parent.getContext()).inflate(R.id.main_list, parent, false);
//ViewHolder에 레이아웃 연결한 리스트 아이템 뷰를 전달
ViewHolder vh = new ViewHolder(v);
return vh;
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
//메모가 비어있으면
if(TextUtils.isEmpty(memos[position]))
//날짜를 보여주고
holder.mTextView.setText((position + 1) + " 일");
//메모가 비어있지 않으면
else
//메모 내용을 보여준다.
holder.mTextView.setText(memos[position]);
}
@Override
public int getItemCount() {
return 31;
}
public class ViewHolder extends RecyclerView.ViewHolder {
//리스트 요소(element)의 텍스트 뷰
public TextView mTextView;
public ViewHolder(View v) {
super(v);
mTextView = v.findViewById(R.id.tv_date);
mTextView.setOnClickListener(view -> {
if(getAdapterPosition() == RecyclerView.NO_POSITION)
return;
mTextView.getContext().startActivity(MemoActivity.newIntent(mTextView.getContext()
, year, month, getAdapterPosition()+1, memos[getAdapterPosition()]));
});
}
}
}
해당 에러가 왜 나는지 모르겠습니다ㅠㅠㅠ
필요하신 소스있으시면 댓글로 달겠습니다!!
도와주세요!!!