我想在延迟后停止刷新,所以我这样做但是它不起作用:
final SwipeRefreshLayout mSwipeRefreshLayout = (SwipeRefreshLayout) rootview.findViewById(R.id.activity_main_swipe_refresh_layout);
mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override public void onRefresh() {
new Handler().postDelayed(new Runnable() {
@Override public void run() {
mSwipeRefreshLayout.setRefreshing(false);
}
}, 2000);
}
});
}
这是我不知道的XML代码是否合适:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fab="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<android.support.v4.widget.SwipeRefreshLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/activity_main_swipe_refresh_layout"
>
<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@id/android:list"
android:longClickable="true"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentBottom="true" />
<TextView
android:id="@android:id/empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:textSize="30sp"
android:text="" />
<com.getbase.floatingactionbutton.AddFloatingActionButton
android:id="@+id/semi_transparent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
fab:fab_plusIconColor="@color/primaryTextColor"
fab:fab_colorNormal="@color/primaryColor"
fab:fab_colorPressed="@color/AccentColor"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView5"
android:height="200dp"
android:width="200dp"
android:visibility="gone"
android:textSize="22dp"
android:text="Vous n'avez aucun coffy commencez par en ajouter un en cliquant sur le bouton +"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
<WebView
android:layout_width="10dp"
android:layout_height="10dp"
android:id="@+id/webView3"
android:visibility="invisible"
android:layout_above="@+id/semi_transparent"
android:layout_centerHorizontal="true" />
</android.support.v4.widget.SwipeRefreshLayout>
</RelativeLayout>
如果有人找到解决方案,我会尝试一切,这将是不可思议的
我的处理程序导入:
import android.os.Handler;
答案 0 :(得分:1)
我的代码中没有发现任何错误,但您可以查看此剪辑:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.your_layout);
SwipeRefreshLayout 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);
}
@Override public void onRefresh() {
new Handler().postDelayed(new Runnable() {
@Override public void run() {
swipeLayout.setRefreshing(false);
}
}, 5000);
}
我认为你的布局错了,RelativeLayout应该在SwipeRefreshLayout里面。检查下面的这个布局,并注意如果仍然不起作用,你可以带xmlns:fab =&#34; http://schemas.android.com/apk/res-auto"到SwipeRefreshLayout属性:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.SwipeRefreshLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/activity_main_swipe_refresh_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<RelativeLayout
xmlns:fab="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@id/android:list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:longClickable="true"/>
<TextView
android:id="@android:id/empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text=""
android:textSize="30sp"/>
<com.getbase.floatingactionbutton.AddFloatingActionButton
android:id="@+id/semi_transparent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
fab:fab_colorNormal="#ABCDEF"
fab:fab_colorPressed="@color/AccentColor"
fab:fab_plusIconColor="@color/primaryTextColor"/>
<TextView
android:id="@+id/imageView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:width="200dp"
android:height="200dp"
android:text="Vous n'avez aucun coffy commencez par en ajouter un en cliquant sur le bouton +"
android:textSize="22dp"
android:visibility="gone"/>
<WebView
android:id="@+id/webView3"
android:layout_width="10dp"
android:layout_height="10dp"
android:layout_above="@+id/semi_transparent"
android:layout_centerHorizontal="true"
android:visibility="invisible"/>
</RelativeLayout>
</android.support.v4.widget.SwipeRefreshLayout>