728x90
반응형
질문 : Android Pull-to-Refresh 구현 방법
Twitter (공식 앱)와 같은 Android 애플리케이션에서 ListView를 만나면이를 아래로 끌어 내려 (출시되면 다시 튀어 나옴) 콘텐츠를 새로 고칠 수 있습니다.
그것을 구현하는 가장 좋은 방법이 무엇이라고 생각합니까?
내가 생각할 수있는 몇 가지 가능성 :
권장 사항이 있습니까?
추신 : 공식 트위터 앱 소스 코드가 언제 출시되는지 궁금합니다. 출시 될 것이라는 언급이 있지만 6 개월이 지났고 그 이후로 소식을 듣지 못했습니다.
답변
마지막으로 Google은 풀-투-리프레시 라이브러리의 공식 버전을 출시했습니다!
지원 라이브러리 내에서 SwipeRefreshLayout
이라고 하며 설명서는 다음과 같습니다.
SwipeRefreshLayout
을 뷰의 부모로 추가하면 레이아웃을 새로 고치는 풀로 처리됩니다.ListView
를 예로 들었습니다.LinearLayout
,ScrollView
등과 같은View
가 될 수 있습니다.)<android.support.v4.widget.SwipeRefreshLayout android:id="@+id/pullToRefresh" android:layout_width="match_parent" android:layout_height="wrap_content"> <ListView android:id="@+id/listView" android:layout_width="match_parent" android:layout_height="match_parent"/> </android.support.v4.widget.SwipeRefreshLayout>
- 클래스에 리스너 추가
protected void onCreate(Bundle savedInstanceState) { final SwipeRefreshLayout pullToRefresh = findViewById(R.id.pullToRefresh); pullToRefresh.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() { @Override public void onRefresh() { refreshData(); // your code pullToRefresh.setRefreshing(false); } }); }
pullToRefresh.setRefreshing(true/false);
호출 할 수도 있습니다. 귀하의 요구 사항에 따라.
최신 정보
Android 지원 라이브러리는 더 이상 사용되지 않으며 AndroidX로 대체되었습니다. 새 라이브러리에 대한 링크는 여기 에서 찾을 수 있습니다.
또한 프로젝트에 다음 종속성을 추가해야합니다.
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
또는
Refactor >> Migrate to AndroidX로 이동하면 Android Studio가 종속성을 처리합니다.
출처 : https://stackoverflow.com/questions/4583484/how-to-implement-android-pull-to-refresh
728x90
반응형
'프로그래밍 언어 > Android' 카테고리의 다른 글
Android 휴대 전화에서 가로 세로 방향 확인하는 방법 (0) | 2021.07.13 |
---|---|
Android 8: Cleartext HTTP traffic not permitted 오류 (0) | 2021.07.12 |
Android에서 프로그래밍 방식으로 현재 GPS 위치를 얻는 방법 (0) | 2021.07.07 |
TextView에서 HTML을 표시하는 방법 (0) | 2021.07.05 |
Android : 이름을 사용하여 리소스에서 문자열을 가져 오는 방법 (0) | 2021.07.05 |