2016-11-21 2 views
-3

Я использую UltimateRecyclerView (расширяет RecycerView с большим количеством замечательных функций)Ошибка при попытке вызова Adapter.notifyDataSetChanged в UltimateRecyclerView

Но я получаю сообщение об ошибке ...

Почему я получаю :

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(); 
    } 

} 

?

Большое спасибо!

EDIT

Просто добавь пустой Layout_Ressource_file с именем: empty_view.

Чем он должен работать!

Ответ на этот вопрос приведен ниже.

+0

увидеть это вы получите идею https://github.com/cymcsg/UltimateRecyclerView/issues/346 – Ironman

ответ

0

Здравствуйте Не использовать новый Instace адаптера используется старый instace

public void add(View view){ 
    myAdapter.dhikrListe.add(new Dhikr("Al-Hamdu lillah")); 
    myAdapter.notifyDataSetChanged(); 
} 
Смежные вопросы