2017-04-12 22 views
0

我有java.lang.NoClassDefFoundError錯誤:io.realm.RealmRecyclerViewAdapter $ 1 我使用的境界compile 'io.realm:android-adapters:2.0.0'classpath "io.realm:realm-gradle-plugin:2.2.1" 當我建立我的RealmAdapter命名:AdapterJadwalKuliahRV機器人 - java.lang.NoClassDefFoundError在RealmRecycle查看

public class AdapterJadwalKuliahRV extends RealmRecyclerViewAdapter<JadwalKuliahModel, AdapterJadwalKuliahRV.MyViewHolder> { 



public AdapterJadwalKuliahRV(OrderedRealmCollection<JadwalKuliahModel> data){ 
    super(data, true); 
    setHasStableIds(true); 
} 



@Override 
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
    View itemView = LayoutInflater.from(parent.getContext()) 
      .inflate(R.layout.row_jk, parent, false); 
    return new MyViewHolder(itemView); 
} 


@Override 
public void onBindViewHolder(MyViewHolder holder, int position){ 
    final JadwalKuliahModel jk = getItem(position); 
    holder.data= jk; 
    holder.txtHari.setText(jk.getHari_jk()); 
    holder.txtMakul.setText(jk.getMakul_jk()); 
    holder.txtJam.setText(jk.getWaktu_jk()); 
    holder.txtDosen.setText(jk.getDosen_jk()); 
    holder.txtRuangan.setText(jk.getRuangan_jk()); 
    holder.txtKelas.setText(jk.getKelas_jk()); 
} 

@Override 
public int getItemCount(){ 
    return data.size(); 
} 


class MyViewHolder extends RecyclerView.ViewHolder{ 

    private TextView txtHari,txtMakul,txtJam,txtDosen,txtRuangan,txtKelas; 
    private JadwalKuliahModel data; 

    private MyViewHolder(View view){ 
     super(view); 
     txtHari = (TextView) view.findViewById(R.id.rowhariJK); 
     txtJam = (TextView) view.findViewById(R.id.rowJamjk); 
     txtMakul = (TextView) view.findViewById(R.id.rowMakul); 
     txtDosen = (TextView) view.findViewById(R.id.rowDosen); 
     txtRuangan = (TextView) view.findViewById(R.id.rowRuanganjk); 
     txtKelas = (TextView) view.findViewById(R.id.rowKelasJK); 

    } 
} 

,這是紐約州法到該適配器和工具設置爲我的活動

private void setupRecycler() { 
    realm.getDefaultInstance(); 
    AdapterJadwalKuliahRV = new AdapterJadwalKuliahRV(realm.where(JadwalKuliahModel.class).findAll()); 
    recyclerView.setLayoutManager(new LinearLayoutManager(this)); 
    recyclerView.setAdapter(AdapterJadwalKuliahRV); 
    recyclerView.setHasFixedSize(true); 

} 

,這是我的模型

private static AtomicInteger INTEGER_COUNTER = new AtomicInteger(0); 


@PrimaryKey 
private int no_jk; 

private String hari_jk; 
private String waktu_jk; 
private String makul_jk; 
private String ruangan_jk; 
private String dosen_jk; 
private String kelas_jk, created_at, updated_at; 
private String Author; 
private int noonline_j; 
final static public String jkSort =""; 

public JadwalKuliahModel() { 
} 

public JadwalKuliahModel(int no_jk, String hari_jk, String waktu_jk, String makul_jk, String ruangan_jk, String dosen_jk, String kelas_jk, String created_at, String updated_at, String author, int noonline_j) { 
    this.no_jk = no_jk; 
    this.hari_jk = hari_jk; 
    this.waktu_jk = waktu_jk; 
    this.ruangan_jk = ruangan_jk; 
    this.makul_jk = makul_jk; 
    this.dosen_jk = dosen_jk; 
    this.kelas_jk = kelas_jk; 
    this.created_at = created_at; 
    this.updated_at = updated_at; 
    this.Author = author; 
    this.noonline_j = noonline_j; 
} 

與setter和getter

,但是,我有問題,RealmRecyclerViewAdapter 像this

請幫助我..

+0

之前存在嗎?嘗試清理和重建項目。需要更多信息來解決這個問題。 –

+0

當然我有。謝謝你,我已經申請領域插件gradle – AufaDhiya

回答

1

compile 'io.realm:android-adapters:2.0.0'只支持領域的Java 3.0.0及以上(爲例如當前最新的,這是classpath "io.realm:realm-gradle-plugin:3.1.2")。

要使用realm-android-adapters與Realm 2.x,您需要使用compile 'io.realm:android-adapters:1.5.0

您收到此異常,因爲OrderedRealmCollectionChangeListener你添加應用插件境界不境界3.0.0

+0

,它的工作原理。 – AufaDhiya