我正在尝试实现swiperefreshlayout布局,并且在"this“上出现了错误。
public class viewBets_activity extends ActionBarActivity {
SwipeRefreshLayout swipeLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.viewbets);
swipeLayout = (SwipeRefreshLayout) findViewById(R.id.swipe_container);
swipeLayout.setOnRefreshListener(this);
swipeLayout.setColorScheme(android.R.color.holo_blue_bright,
android.R.color.holo_green_light,
android.R.color.holo_orange_light,
android.R.color.holo_red_light);
}
public void onRefresh() {
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
swipeLayout.setRefreshing(false);
}
}, 5000);
}
}我在下面的swipeLayout.setOnRefreshListener(this);屏幕截图上出错了

发布于 2014-11-18 00:38:08
既然添加了截图,错误就清楚了。
您正在将错误的参数传递给setOnRefreshListener()!当然,如果你想一想,这是有道理的。你的课是ActionBarActivity。你想把OnRefreshListener设置为ActionBarActivity.没有任何意义!您需要将代码更改为:
swipeLayout.setOnRefreshListener(new OnRefreshListener()
{
@Override
public void onRefresh()
{
// what you want to happen onRefresh goes here
}
});在这里,您将创建一个新的OnRefreshListener对象,并将其作为侦听器添加。
对于未来,通常情况下,无论何时您有一个setOn______Listener()方法,您要传递的参数都将是您自定义的On_____Listener对象。您可以单独创建,也可以按照我在回答中所做的那样在set方法中创建它。
发布于 2016-03-19 16:46:21
你的课不见了
implement SwipeRefreshLayout.OnRefreshListener 这允许侦听器在通过onRefresh作为setOnRefreshListener参数传递时引用重写的方法setOnRefreshListener。
https://stackoverflow.com/questions/26984371
复制相似问题