在Android中使用PullToRefresh和UITableView

时间:2012-08-10 02:13:43

标签: java android uitableview listview

我尝试使用Pull-to-Refresh by Chrisbanesandroid-uitableview by thiagolocatelli

因为所有这些都扩展了LinearLayout。所以我试着改变:

UITableView extends PullToRefreshListView

问题是:

  • 我不能拉我的UITableView

enter image description here

  • 因为UITableView和PullToRefreshListView的布局是LinearLayout。我怎样才能改变我的布局:

enter image description here

由于


更新 根据Chrisbanes的回答,我有我的布局

<com.mypacket.widget.PullToRefreshScrollView
            android:id="@+id/observable_scroll_view"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <com.mypacket.widget.UITableView
                android:id="@+id/tableView"
                style="@style/UITableView" />
        </com.mypacket.widget.PullToRefreshScrollView>

我的代码:

mObservableScrollView = (PullToRefreshScrollView) findViewById(R.id.observable_scroll_view);
mTableView = (UITableView) findViewById(R.id.tableView);

        // Set a listener to be invoked when the list should be refreshed.
        mObservableScrollView.setOnRefreshListener(new OnRefreshListener<ScrollView>() {

            @Override
            public void onRefresh(PullToRefreshBase<ScrollView> refreshView) {
                new GetDataTask().execute();
            }
        });

        mObservableScrollView.setMode(Mode.PULL_UP_TO_REFRESH);
private class GetDataTask extends AsyncTask<Void, Void, String> {

        @Override
        protected String doInBackground(Void... params) {
            // Simulates a background job.
            try {
                Thread.sleep(1000);
                Log.i(TAG, "REFRESHHHHHHHHHHHHHHHHHHHHHHHHHHH");
            } catch (InterruptedException e) {
            }
            return "";
        }

        @Override
        protected void onPostExecute(String result) {
            // Call onRefreshComplete when the list has been refreshed.
            mObservableScrollView.onRefreshComplete();
            super.onPostExecute(result);
        }
    }

但是没有什么变化,我无法滚动,无法拉动

1 个答案:

答案 0 :(得分:3)

我最近添加了PullToRefreshScrollView,它可以帮到你。只需用PullToRefreshScrollView替换ScrollView。

PullToRefreshScrollView现在位于dev分支中,但将在master中用于下一个版本。