我想在mainactivity中调用函数loadrestaurantlist(),并使用((mainactivity)getactivity()).loadrestaurantlist()在片段中调用它;但当我启动片段时,我的应用程序就停止了。有人知道它为什么不起作用吗?在没有searchview的情况下将数据显示到recyclerview中没有问题。但是当我使用searchview和setonquerytextlister时,我的应用程序停止了工作。
//主活动.java
public void loadrestaurantlist(){
svrestaurant = (SearchView) findViewById(R.id.sv);
rvrestaurant = (RecyclerView) findViewById(R.id.rv);
svrestaurant.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
new Downloader(MainActivity.this, urlAddress, query, rvrestaurant).execute();
return false;
}
@Override
public boolean onQueryTextChange(String query) {
new Downloader(MainActivity.this, urlAddress, query, rvrestaurant).execute();
return false;
}
});
}
//restaurantfragment.java文件
公共类restaurantfragment扩展片段{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.tab2preference, container, false);
return rootView;
}
public void onStart(){
super.onStart();
((MainActivity)getActivity()).loadRestaurantlist();
}
}
暂无答案!
目前还没有任何答案,快来回答吧!