SwipeRefreshLayout组件只接受一个子组件:即需要刷新的那个组件。
如果要展示一个“刷新动画”,它必须调用
setRefrshing(true)
,否则取消动画就调用setRefreshing(false)
。@Override
protected
void
onCreate(Bundle
savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final
SwipeRefreshLayout
swipeView = (SwipeRefreshLayout) findViewById(R.id.swipe);
final
TextView
rndNum = (TextView) findViewById(R.id.rndNum);
swipeView.setColorScheme(android.R.color.holo_blue_dark,
android.R.color.holo_blue_light, android.R.color.holo_green_light, android.R.color.holo_green_light);
swipeView.setOnRefreshListener(
new
SwipeRefreshLayout.OnRefreshListener()
{
@Override
public
void
onRefresh()
{
swipeView.setRefreshing(
true
);
Log.d(
"Swipe"
,
"Refreshing
Number"
);
(
new
Handler()).postDelayed(
new
Runnable()
{
@Override
public
void
run()
{
swipeView.setRefreshing(
false
);
double
f
= Math.random();
rndNum.setText(String.valueOf(f));
}
},
3000
);
}
});
}