簡體   English   中英

圖像未顯示在回收站視圖中

[英]Images are not showing in recycler view

我的 Recyclerview 正面臨這個問題。 我正在嘗試顯示我擁有的另一個 firebase 數據庫中的圖像。 以前運行良好,現在運行我的應用程序時,我得到兩個空白卡視圖,但沒有圖像。 我不確定發生了什么,因為它以前運行良好。 有人可以幫我解決這個問題。 提前致謝。 我的代碼如下

//Code

 recyclerView = findViewById(R.id.recyclerView);
        RecyclerView.LayoutManager layoutManager = new GridLayoutManager(getApplicationContext(),1);

        recyclerView.setLayoutManager(layoutManager);
        myUploads = new ArrayList<Model>();
        aAdapter = new Adapter(MainActivity2.this, myUploads);
        recyclerView.setAdapter(aAdapter);
        aAdapter.notifyDataSetChanged();
        progressBar=findViewById(R.id.progressBar);



        databaseReference = FirebaseDatabase.getInstance("https://puttt0-4331.firebaseio.com").getReference("Images");


        databaseReference.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(@NonNull DataSnapshot snapshot) {

                progressBar.setVisibility(View.GONE);

                if(snapshot.exists()){

                    for (DataSnapshot postsnapshot : snapshot.getChildren()) {

                        Model upload=postsnapshot.getValue(Model.class);
                        //myUploads.clear();

                        myUploads.add(upload);
                        aAdapter = new Adapter(MainActivity2.this, myUploads);
                        recyclerView.setAdapter(aAdapter);
                        //aAdapter.notifyDataSetChanged();
                        recyclerView.invalidate();


                    }







                    aAdapter.notifyDataSetChanged();

               

你不應該

setAdapter(newAdapter) 

每次從 OnDataChange() 方法獲取新數據時

這是你應該做的:

if(snapshot.exists()){
    myUploads.clear();
    for (DataSnapshot postsnapshot : snapshot.getChildren()) {
        Model upload=postsnapshot.getValue(Model.class);
        myUploads.add(upload);
    }
    aAdapter.notifyDataSetChanged();
}

試試這個,然后告訴我會發生什么。 並且永遠記住你必須對適配器只有一個初始化,即

aAdapter = new Adapter(MainActivity2.this, myUploads);//this should only be done only once for the adapter


                

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM