所以我有一个刷新向下滑动功能,当你从屏幕上的任何地方拉下来时它会刷新......但是我不想要这个,我有一个由JSon对象提取的列表视图。 。这部分并不重要,我得到了所有的json工作......我无法弄清楚的部分是如何实现这一点的,当我在Listview上工作时,我立即进入列表视图当我拉起整个页面刷新。 我的那个页面的XML ......
<in.srain.cube.views.ptr.PtrClassicFrameLayout
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"
android:id="@+id/ptr_care"
>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.fzhang.nhchecklist.ResidentCareActivity">
<TextView
android:id="@+id/care_summary_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@android:color/black"
tools:layout_constraintTop_creator="1"
android:layout_marginStart="2dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="20dp"
tools:layout_constraintLeft_creator="1"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="2dp" />
<ListView
android:id="@+id/care_info_listview"
android:fadeScrollbars="false"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:layout_marginTop="10dp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/care_summary_textview" />
</android.support.constraint.ConstraintLayout>
</in.srain.cube.views.ptr.PtrClassicFrameLayout>
&#13;
我的java
mPtrFrame=(PtrClassicFrameLayout)findViewById(R.id.ptr_care);
mPtrFrame.setLastUpdateTimeRelateObject(this);
mPtrFrame.setPtrHandler(new PtrHandler() {
@Override
public boolean checkCanDoRefresh(PtrFrameLayout frame, View content, View header) {
return PtrDefaultHandler.checkContentCanBePulledDown(frame, content, header);
}
@Override
public void onRefreshBegin(PtrFrameLayout frame) {
updateDataWithPTR();
}
});
&#13;
任何人都有任何好主意,还有刷新和onResume ...虽然这并不重要(如果它确实请纠正我)谢谢你的帮助
答案 0 :(得分:1)
要实现在列表顶部工作的拉动刷新行为(当您在care_summary_textview上执行拉动手势时它将起作用)而不在列表本身上使用此功能:
<android.support.constraint.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="com.fzhang.nhchecklist.ResidentCareActivity">
<in.srain.cube.views.ptr.PtrClassicFrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/ptr_care"
tools:layout_constraintTop_creator="1"
android:layout_marginStart="2dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="20dp"
tools:layout_constraintLeft_creator="1"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="2dp">
<TextView
android:id="@+id/care_summary_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="@android:color/black"/>
</in.srain.cube.views.ptr.PtrClassicFrameLayout>
<ListView
android:id="@+id/care_info_listview"
android:fadeScrollbars="false"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="0dp"
android:layout_marginRight="0dp"
android:layout_marginTop="10dp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/ptr_care" />
</android.support.constraint.ConstraintLayout>