第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

卡片視圖未出現(xiàn)在 RecyclerView 中

卡片視圖未出現(xiàn)在 RecyclerView 中

牛魔王的故事 2022-11-10 15:17:27
我正在構建一個連接到 REST API 并檢索數據庫中所有員工的應用程序。該應用程序使用 RecyclerView 顯示在 CardView 中帶回的所有員工。問題是 RecyclerView 中沒有出現(xiàn)任何內容,并且有從 REST API 返回的數據。它是一個 Android 應用程序,使用 Java 構建,操作系統(tǒng)使用 Pie。該項目是使用基本活動模板創(chuàng)建的。我的活動課public class ViewAllEmployees extends AppCompatActivity {    private List<Employee> employees;    private RecyclerView rcView;    private EmployeeAdapter adapter;    private Context context;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_view_all_employees);        Toolbar toolbar = findViewById(R.id.toolbar);        setSupportActionBar(toolbar);        context = this;        getSupportActionBar().setDisplayHomeAsUpEnabled(true);        FetchEmployeesTask async = new FetchEmployeesTask(new AsyncResponse() {            @Override            public void processFinished(List<Employee> output) {                Log.i("Async", "Finished");            }        });        async.execute();        rcView = findViewById(R.id.rcView);        adapter = new EmployeeAdapter(context, employees);        rcView.setAdapter(adapter);        rcView.setLayoutManager(new LinearLayoutManager(context));    }    private class FetchEmployeesTask extends AsyncTask<Void, Void, List<Employee>> {        public AsyncResponse delegate = null;        public  FetchEmployeesTask(AsyncResponse asyncResponse){            delegate = asyncResponse;        }        @Override        protected List<Employee> doInBackground(Void... voids) {            return new APIHelper().fetchItems();        }        @Override        protected void onPostExecute(List<Employee> items) {            employees = items;            delegate.processFinished(items);        }    }    public interface AsyncResponse{        void processFinished(List<Employee> output);    }
查看完整描述

2 回答

?
慕蓋茨4494581

TA貢獻1850條經驗 獲得超11個贊

您必須在填充陣列列表后通知您的適配器。初始化您的員工數組列表變量,然后執(zhí)行:


private class FetchEmployeesTask extends AsyncTask<Void, Void, List<Employee>> {



    public AsyncResponse delegate = null;


    public  FetchEmployeesTask(AsyncResponse asyncResponse){

        delegate = asyncResponse;

    }



    @Override

    protected List<Employee> doInBackground(Void... voids) {


        return new APIHelper().fetchItems();

    }


    @Override

    protected void onPostExecute(List<Employee> items) {

        employees.addAll(items);

        adapter.notifyDataSetChanged();

        delegate.processFinished(items);


    }

}


查看完整回答
反對 回復 2022-11-10
?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

FetchEmployeesTask async = new FetchEmployeesTask(new AsyncResponse() {

    @Override

    public void processFinished(List<Employee> output) {

        Log.i("Async", "Finished");

        employees.addAll(items);

        adapter.notifyDataSetChanged();

    }

});


查看完整回答
反對 回復 2022-11-10
  • 2 回答
  • 0 關注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號