티스토리 뷰

목차

    반응형

    안드로이드 Pull To Refresh 소스 예제 (당겨서 새로고침 기능)





    위와 같은 기능이 Pull To Refresh(당겨서 새로고침)인데, 얼마전(2011년 기준)부터 안드로이드에서도 지원이 되기 시작했었는데 외국분이 간단히 구현해 놓으셨네요.



    코드 복사 후 바로 실행은 되지 않는 터라, 제가 정리해 봤습니다.


    압축 풀고 바로 Import 한 뒤 실행해 보면, 당겨서 새로고침 잘 될겁니다.


    PullToRefreshActivity.java


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.pull_to_refresh);
     
        // Set a listener to be invoked when the list should be refreshed.
        ((PullToRefreshListView) getListView()).setOnRefreshListener(new OnRefreshListener() {
            @Override
            public void onRefresh() {
                // Do work to refresh the list here.
                new GetDataTask().execute();
            }
        });
     
        mListItems = new LinkedList<String>();
        mListItems.addAll(Arrays.asList(mStrings));
     
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_1, mListItems);
     
        setListAdapter(adapter);
    }
    cs


    PullToRefreshListView.java


    1
    2
    3
    4
    5
    6
    7
    public void onScrollStateChanged(AbsListView view, int scrollState) {
        mCurrentScrollState = scrollState;
     
        if (mOnScrollListener != null) {
            mOnScrollListener.onScrollStateChanged(view, scrollState);
        }
    }
    cs

    Android - Pull To Refresh[Android 당겨서 새로고침]

    Android - Tap to refresh[Android 당겨서 새로고침]

    실행하면 위 사진처럼 당겨서 새로고침되는 화면을 확인할 수 있습니다.

    안드로이드 Pull To Refresh 소스 예제 (당겨서 새로고침 기능)

    반응형