如何设置recyclerView适配器?
问题描述:
所以,我不知道该怎么做。我想获取jsonData并使用来自同一个Activtiy的这些数据设置一个适配器。这甚至有可能吗?如果是,我应该怎么做,因为它会因为“下载”延迟而一直崩溃。适配器想要设置比获取数据的时间早,因为它是空数组。如何设置recyclerView适配器?
private SzabadEuMusorok[] mSzabadEuMusoroks;
@InjectView(R.id.archivumReyclerView)
RecyclerView mRecyclerView;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_archivum);
ButterKnife.inject(this);
setArray();
CollectionsAdapter adapter = new CollectionsAdapter(this, mSzabadEuMusoroks);
mRecyclerView.setAdapter(adapter);
RecyclerView.LayoutManager layoutManager = new LinearLayoutManager(this);
mRecyclerView.setLayoutManager(layoutManager);
mRecyclerView.setHasFixedSize(true);
}
答
请务必从调用webservice的
请了遵循以下让你得到关于如何实现它的概述适配器设置你的数据后,才:
public class MainActivity extends Activity implements OnClickListener {
private SzabadEuMusorok[] mSzabadEuMusoroks;
@InjectView(R.id.archivumReyclerView)
RecyclerView mRecyclerView;
RecyclerView.LayoutManager layoutManager ;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_archivum);
ButterKnife.inject(this);
setArray();
layoutManager = new LinearLayoutManager(this);
new LongOperation().execute("");//call your webservice
}
private class LongOperation extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
for (int i = 0; i < 5; i++) {
try {
//call your webservice here
} catch (InterruptedException e) {
Thread.interrupted();
}
}
return serviceResult;// this will be passed to onPostExecute
}
@Override
protected void onPostExecute(String result) {
mRecyclerView.setLayoutManager(layoutManager);
mRecyclerView.setHasFixedSize(true);
CollectionsAdapter adapter = new CollectionsAdapter(this, mSzabadEuMusoroks);
mRecyclerView.setAdapter(adapter); //set your adapter using result in webservice called in doinbackground
}
@Override
protected void onPreExecute() {
// show a progress dialog
}
}
}
在你的下载器中设置setAdapter()...... – sushildlh
我应该在哪里设置它?什么是下载器? – Marci
你的JSON数据在哪里? – sushildlh