SwipeRefreshLayout:有 ACTION_MOVE 事件但没有活动指针 ID

问题描述

我的 android 控制台中出现此错误

SwipeRefreshLayout:有 ACTION_MOVE 事件但没有活动 指针 ID。

代码

xml 活动

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".HomeActivity"
android:background="@color/dark21">

<include layout="@layout/titlebar"/>

<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
    android:id="@+id/swipeRefreshLayout"
    android:layout_width="match_parent"
    android:layout_height="@+id/listViewTopGuideline"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="@+id/listViewTopGuideline">

    <ListView
        android:id="@+id/listview"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>

<androidx.constraintlayout.widget.Guideline
    android:id="@+id/listViewTopGuideline"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    app:layout_constraintGuide_percent="0.09"/>
</androidx.constraintlayout.widget.ConstraintLayout>

Java 活动

    private String searchString = "";
Activity activity;
SwipeRefreshLayout refreshLayout;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_home);

    activity = this;

    refreshLayout = findViewById(R.id.swipeRefreshLayout);

    RequestAPI requestAPI = new RequestAPI(this);

    VolleyCallback volleyCallback = new VolleyCallback() {
        @Override
        public void onSuccess(String stringResult) {
            Gson gson = new Gson();
            ConversationsResultModel[] allResults = gson.fromJson(stringResult.replaceAll("\"private\":","\"_private\":"),ConversationsResultModel[].class);

            ListView listView = findViewById(R.id.listview);
            listView.setAdapter(new HomeConversationModelAdapter(activity,Arrays.asList(allResults)));
            listView.setonItemClickListener((adapter,view,position,id) -> {
                ConversationsResultModel currentItem = (ConversationsResultModel) adapter.getItemAtPosition(position);
                Toast.makeText(HomeActivity.this,"You clicked on the conversation " + currentItem.title,Toast.LENGTH_SHORT).show();
            });
            refreshLayout.setRefreshing(false);
        }

        @Override
        public void onError(String error) {
            if (error.contains("Unable to resolve host")) {
                AlertDialog.Builder popUp = new AlertDialog.Builder(activity);
                popUp.setTitle("Error");
                popUp.setMessage("Connection Failed to the servers.");
                popUp.setPositiveButton("OK",(dialog,which) -> dialog.cancel());
                popUp.show();
            } else {
                Toast.makeText(getApplicationContext(),"An error has occurred",Toast.LENGTH_SHORT).show();
                Log.d("DEBUG",error);
            }
            refreshLayout.setRefreshing(false);
        }
    };

    HashMap<String,String> params = new HashMap<>();
    params.put("mobiletoken","mytoken");
    params.put("searchString",searchString);

    requestAPI.sendRequest("searchMainApp.PHP",params,volleyCallback);

    refreshLayout.setonRefreshListener(() -> requestAPI.sendRequest("request",volleyCallback));

}

当我刷新 ListView 时,我时不时地收到此错误。 它不会阻止应用程序工作,但我仍然想修复错误

感谢您以后的回复

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)