@Override public void handleMessage(Message msg) { dismissLoadingDialog(); switch (msg.what) { case BookGetUtils.NET_ERROR: showToast("网络错误"); break; case BookGetUtils.GET_SUCCESS: Pattern pattern = Pattern.compile("\\[.*?\\]"); Matcher matcher = pattern.matcher(msg.obj.toString()); LogUtils.d("获取图书列表:" + msg.obj.toString()); if (matcher.find()) { App.courseList.clear(); Gson gson = new Gson(); Book[] books = gson.fromJson(matcher.group(), Book[].class); for (Book book : books) { App.courseList.add(book); LogUtils.d("图书列表数据:" + book.toString()); } showToast("获取数据成功"); mPtrv.setRefreshing(false); } break; case BookGetUtils.ORDER_BOOK_OK: App.courseList.get(msg.arg1).ordered = App.courseList.get(msg.arg1).ordered == null ? "1" : null; showToast("购买成功"); break; case BookGetUtils.UN_ORDER_BOOK_OK: App.courseList.get(msg.arg1).ordered = App.courseList.get(msg.arg1).ordered == null ? "1" : null; showToast("取消成功"); break; case BookGetUtils.ORDER_BOOK_FAILE: showToast("操作失败,请重试"); break; } adapter.notifyDataSetChanged(); }
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(this); title.setAlpha(0); accountUtils = new CacheUtils(this, CacheUtils.CacheType.FOR_ACCOUNT); mNvMenu.getmMenuLv().setOnItemClickListener(this); mDrawerLayout.setDrawerListener( new DrawerLayout.SimpleDrawerListener() { @Override public void onDrawerOpened(View drawerView) { super.onDrawerOpened(drawerView); // mLogo.setImageResource(R.mipmap.back); mLogo.setState(MaterialMenuDrawable.IconState.ARROW); list_clickable = false; } @Override public void onDrawerSlide(View drawerView, float slideOffset) { super.onDrawerSlide(drawerView, slideOffset); title.setAlpha(slideOffset); title2.setAlpha(1 - slideOffset); mLogo.setTransformationOffset( MaterialMenuDrawable.AnimationState.BURGER_ARROW, slideOffset); } @Override public void onDrawerClosed(View drawerView) { super.onDrawerClosed(drawerView); // mLogo.setImageResource(R.mipmap.open_left_menu); mLogo.setState(MaterialMenuDrawable.IconState.BURGER); list_clickable = true; } }); adapter = new BookListAdapter(); listView.setAdapter(adapter); listView.setOnItemClickListener( new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { if (list_clickable) { buy(App.courseList.get(position), position); } } }); mPtrv.setOnRefreshListener( new PullToRefreshView.OnRefreshListener() { @Override public void onRefresh() { if (NetworkChecker.IsNetworkAvailable(MainActivity.this)) { refrushBookList(); } else showToast("网络错误"); } }); if (App.courseList.size() == 0) { if (NetworkChecker.IsNetworkAvailable(MainActivity.this)) { refrushBookList(); } else showToast("网络错误"); } }