这是继承基类之后的MainActivity,之后会持续更新---------

--------------这是继承完基类的main
public class MainActivity extends BaseActivity implements HttpCallback, AdapterView.OnItemClickListener {
    private String api = "http://172.17.8.100/mobile/exam/findNewList";
    private PullToRefreshListView pull_list;
    private boolean isPull = false;
    private List<MainBean.ResultBean.DataBean> dataBeanList = new ArrayList<>();
    private MainAdapter adapter;

    @Override
    protected boolean isFullScreen() {
        return false;
    }
    //这试获取的控件
    @Override
    protected void findView() {
        pull_list = findViewById(R.id.pull_to_refresh_list);
    }
    //这是设置的一些事件
    @Override
    protected void setListener() {
        pull_list.setOnItemClickListener(this);
    }
    //上拉刷新和下拉加载
    @Override
    protected void initFinish() {
        pull_list.setMode(PullToRefreshBase.Mode.BOTH);
        pull_list.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
            @Override
            public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
                isPull = true;
                loadData();
            }

            @Override
            public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
                loadData();
            }
        });
        //设置适配器
        adapter = new MainAdapter(this, dataBeanList);
        pull_list.setAdapter(adapter);
        loadData();
    }
    //获取的布局方法
    @Override
    protected int initLayout() {
        return R.layout.activity_main;
    }

    private void loadData() {
        httpUtils.getDatFromServer(api, this);
    }
    //返回成功
    public void onSuccess(String result) {
        Gson gson = new Gson();
        MainBean mainBean = gson.fromJson(result, MainBean.class);
        if (isPull) {
            isPull = !isPull;
            dataBeanList.clear();
        }
        //添加数据
        dataBeanList.addAll(mainBean.getResult().getData());
        //更新数据
        adapter.notifyDataSetChanged();
        //停止数据
        pull_list.onRefreshComplete();
    }

    public void onError(String errorMsg) {

    }
    //点击跳转事件
    @Override
    public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
        Intent intent = new Intent(this, WebActivity.class);
        MainBean.ResultBean.DataBean item = adapter.getItem(i);
        intent.putExtra("url", item.getUrl());
        startActivity(intent);
    }
}

--------------这是main的布局,我在里面布置了一个抽屉(侧滑)

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <com.handmark.pulltorefresh.library.PullToRefreshListView
            android:id="@+id/pull_to_refresh_list"
            android:layout_width="match_parent"
            android:layout_height="match_parent"></com.handmark.pulltorefresh.library.PullToRefreshListView>
    </LinearLayout>

    <RelativeLayout
        android:layout_width="240dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:background="@android:color/white"></RelativeLayout>
</android.support.v4.widget.DrawerLayout>

猜你喜欢

转载自blog.csdn.net/Mir_you/article/details/81974162
今日推荐