Android 尝试在UltimatereCycleView中调用Adapter.notifyDataSetChanged时出错
我使用的是UltimatereCyclView(扩展了RecycerView,提供了很多强大的功能) 但是我得到了一个错误 为什么我会得到:Android 尝试在UltimatereCycleView中调用Adapter.notifyDataSetChanged时出错,android,list,android-recyclerview,adapter,Android,List,Android Recyclerview,Adapter,我使用的是UltimatereCyclView(扩展了RecycerView,提供了很多强大的功能) 但是我得到了一个错误 为什么我会得到: Caused by: java.lang.IllegalArgumentException: ViewStub must have a valid layoutResource at android.view.ViewStub.inflate(ViewStub.java:284)
Caused by: java.lang.IllegalArgumentException: ViewStub must have a valid layoutResource
at android.view.ViewStub.inflate(ViewStub.java:284)
at android.view.ViewStub.setVisibility(ViewStub.java:235)
at com.marshalchen.ultimaterecyclerview.UltimateRecyclerView.updateHelperDisplays(UltimateRecyclerView.java:862)
尝试运行此代码时:
import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import com.marshalchen.ultimaterecyclerview.UltimateRecyclerView;
import com.yqritc.recyclerviewflexibledivider.HorizontalDividerItemDecoration;
public class MainActivity extends AppCompatActivity {
UltimateRecyclerView dhikrListe;
MyAdapter myAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dhikrListe = (UltimateRecyclerView) findViewById(R.id.ultimate_recyclerView);
dhikrListe.setHasFixedSize(true);
dhikrListe.setLayoutManager(new LinearLayoutManager(this)); //Hier könnten wir auch verschiedene Layouts festlegen. Bei der ListView, die vorher hatten, ist das Linearlayout fest eingestellt.
dhikrListe.addItemDecoration(
new HorizontalDividerItemDecoration.Builder(this)
.color(Color.GRAY)
.build()); // Der Divider trennt die Zeilen mit einem Strich
myAdapter = new MyAdapter(this);
dhikrListe.setAdapter(myAdapter); //Adapter wird gesetzt
}
public void add(View view){
MyAdapter.dhikrListe.add(new Dhikr("Al-Hamdu lillah"));
myAdapter.notifyDataSetChanged();
}
}
?
非常感谢
编辑
只需添加一个名为:empty\u view的空布局资源文件
比它应该工作
感谢下面的回答。您好,请勿使用旧Instance适配器的新Instance
public void add(View view){
myAdapter.dhikrListe.add(new Dhikr("Al-Hamdu lillah"));
myAdapter.notifyDataSetChanged();
}
看到这个你就会明白了