|
|
@@ -6,6 +6,8 @@ import android.graphics.Color;
|
|
|
import android.os.Bundle;
|
|
|
import android.support.v7.widget.DefaultItemAnimator;
|
|
|
import android.support.v7.widget.GridLayoutManager;
|
|
|
+import android.support.v7.widget.LinearLayoutManager;
|
|
|
+import android.support.v7.widget.OrientationHelper;
|
|
|
import android.support.v7.widget.RecyclerView;
|
|
|
import android.view.Gravity;
|
|
|
import android.view.LayoutInflater;
|
|
|
@@ -69,7 +71,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
|
|
|
.readTimeout(5000)
|
|
|
.isDebug(true).build();
|
|
|
private CustomerBanner banner;
|
|
|
- private RecyclerView typeGv;
|
|
|
+ private RecyclerView typeGv, typeGv2;
|
|
|
private BaseActivity baseActivity;
|
|
|
private PullToRefreshListView refreshListView;
|
|
|
|
|
|
@@ -133,6 +135,7 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
|
|
|
moneyAmountLL = (LinearLayout) handlerView.findViewById(R.id.moneyAmountLL);
|
|
|
banner = (CustomerBanner) handlerView.findViewById(R.id.banner);
|
|
|
typeGv = (RecyclerView) handlerView.findViewById(R.id.typeGv);
|
|
|
+ typeGv2 = (RecyclerView) handlerView.findViewById(R.id.typeGv2);
|
|
|
return handlerView;
|
|
|
}
|
|
|
|
|
|
@@ -203,7 +206,6 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
|
|
|
char c = showTop.charAt(i);
|
|
|
TextView textView = new TextView(ct);
|
|
|
textView.setTextSize(textSize);
|
|
|
- textView.setPadding(4, 2, 4, 2);
|
|
|
textView.setText(String.valueOf(c));
|
|
|
textView.setGravity(Gravity.CENTER_VERTICAL);
|
|
|
textView.setBackgroundResource(R.drawable.text_frame_hint_bg);
|
|
|
@@ -228,14 +230,19 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
|
|
|
}
|
|
|
setBannerData(list);
|
|
|
List<String> areaList = new ArrayList<>();
|
|
|
+ List<String> areaList2 = new ArrayList<>();
|
|
|
allArea.add(0, "全部");
|
|
|
for (int i = 0; i < allArea.size(); i++) {
|
|
|
String type = allArea.getString(i);
|
|
|
if (!StringUtil.isEmpty(type)) {
|
|
|
- areaList.add(type);
|
|
|
+ if (i < 4) {
|
|
|
+ areaList.add(type);
|
|
|
+ } else {
|
|
|
+ areaList2.add(type);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- setTypeData(areaList);
|
|
|
+ setTypeData(areaList, areaList2);
|
|
|
PreferenceUtils.putString("appIndex", message);
|
|
|
}
|
|
|
|
|
|
@@ -295,73 +302,105 @@ public class CharitableListFragment extends EasyFragment implements OnPlayListen
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ //TODO 我真是被这样的需求搞废了
|
|
|
private TypeAdapter typeAdapter;
|
|
|
+ private TypeAdapter typeAdapter2;
|
|
|
+
|
|
|
+ private void setTypeData(final List<String> areaList, final List<String> areaList2) {
|
|
|
+ typeAdapter = new TypeAdapter(ct, areaList, 0, new TypeAdapter.ChangeListener() {
|
|
|
+ @Override
|
|
|
+ public void change(String type) {
|
|
|
+ typeAdapter2.clear();
|
|
|
+ loadProjects(type);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ typeAdapter2 = new TypeAdapter(ct, areaList2, -1, new TypeAdapter.ChangeListener() {
|
|
|
+ @Override
|
|
|
+ public void change(String type) {
|
|
|
+ typeAdapter.clear();
|
|
|
+ loadProjects(type);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ typeGv.setItemAnimator(new DefaultItemAnimator());
|
|
|
+ LinearLayoutManager layoutManager = new LinearLayoutManager(ct);
|
|
|
+ layoutManager.setOrientation(OrientationHelper.HORIZONTAL);
|
|
|
+ typeGv.setLayoutManager(layoutManager);
|
|
|
+ typeGv.setAdapter(typeAdapter);
|
|
|
+ LinearLayoutManager layoutManager2 = new LinearLayoutManager(ct);
|
|
|
+ layoutManager2.setOrientation(OrientationHelper.HORIZONTAL);
|
|
|
+ typeGv2.setItemAnimator(new DefaultItemAnimator());
|
|
|
+ typeGv2.setLayoutManager(layoutManager2);
|
|
|
+ typeGv2.setAdapter(typeAdapter2);
|
|
|
+// GridLayoutManager layoutManager = new GridLayoutManager(ct, 782);
|
|
|
+// layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
|
|
|
+// @Override
|
|
|
+// public int getSpanSize(int position) {
|
|
|
+// switch (position) {
|
|
|
+// case 0:
|
|
|
+// return 124;
|
|
|
+// case 1:
|
|
|
+// return 208;
|
|
|
+// case 2:
|
|
|
+// return 225;
|
|
|
+// case 3:
|
|
|
+// return 225;
|
|
|
+// case 4:
|
|
|
+// return 309;
|
|
|
+// case 6:
|
|
|
+// return 225;
|
|
|
+// case 7:
|
|
|
+// return 124;
|
|
|
+// default:
|
|
|
+// return 124;
|
|
|
+// }
|
|
|
+////
|
|
|
+// }
|
|
|
+// });
|
|
|
+
|
|
|
|
|
|
- private void setTypeData(final List<String> areaList) {
|
|
|
- if (typeAdapter == null) {
|
|
|
- typeAdapter = new TypeAdapter(ct, areaList, new TypeAdapter.ChangeListener() {
|
|
|
- @Override
|
|
|
- public void change(String type) {
|
|
|
- loadProjects(type);
|
|
|
- }
|
|
|
- });
|
|
|
- typeGv.setItemAnimator(new DefaultItemAnimator());
|
|
|
- GridLayoutManager layoutManager = new GridLayoutManager(ct, 360);
|
|
|
- layoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
|
|
|
- @Override
|
|
|
- public int getSpanSize(int position) {
|
|
|
- int spanSize =32+(areaList.get(position).length())*14;
|
|
|
- LogUtil.i("spanSize="+spanSize);
|
|
|
- return spanSize;
|
|
|
- }
|
|
|
- });
|
|
|
- typeGv.setLayoutManager(layoutManager);
|
|
|
- typeGv.setAdapter(typeAdapter);
|
|
|
- } else {
|
|
|
- typeAdapter.setAreaList(areaList);
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
private CharitableAdapter charitableAdapter;
|
|
|
|
|
|
private void setContantData(List<CharitModel> models) {
|
|
|
// if (charitableAdapter == null) {
|
|
|
- charitableAdapter = new CharitableAdapter(ct, models, new CharitableAdapter.MyClickListener() {
|
|
|
- @Override
|
|
|
- public void myOnClick(int position, View v) {
|
|
|
- CharitModel model = charitableAdapter.getModels(position);
|
|
|
- if (!model.isEnded()) {
|
|
|
- SelectPlayPop.showPlay(getActivity(), charitableAdapter.getModels(position), new SelectPlayPop.OnSureListener() {
|
|
|
- @Override
|
|
|
- public void sure(double num, int type, CharitModel model) {
|
|
|
- if (type == 1) {
|
|
|
- LogUtil.i("选择了微信支付");
|
|
|
- } else {
|
|
|
- LogUtil.i("选择了支付宝支付");
|
|
|
- }
|
|
|
- loadOrderInfo(num, model);
|
|
|
+ charitableAdapter = new CharitableAdapter(ct, models, new CharitableAdapter.MyClickListener() {
|
|
|
+ @Override
|
|
|
+ public void myOnClick(int position, View v) {
|
|
|
+ CharitModel model = charitableAdapter.getModels(position);
|
|
|
+ if (!model.isEnded()) {
|
|
|
+ SelectPlayPop.showPlay(getActivity(), charitableAdapter.getModels(position), new SelectPlayPop.OnSureListener() {
|
|
|
+ @Override
|
|
|
+ public void sure(double num, int type, CharitModel model) {
|
|
|
+ if (type == 1) {
|
|
|
+ LogUtil.i("选择了微信支付");
|
|
|
+ } else {
|
|
|
+ LogUtil.i("选择了支付宝支付");
|
|
|
}
|
|
|
- });
|
|
|
- }
|
|
|
+ loadOrderInfo(num, model);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
|
|
|
|
|
|
- }
|
|
|
- });
|
|
|
- refreshListView.setAdapter(charitableAdapter);
|
|
|
- refreshListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
|
|
|
- @Override
|
|
|
- public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
|
|
|
- if (charitableAdapter != null) {
|
|
|
- CharitModel model = charitableAdapter.getModels((int) l);
|
|
|
- if (model != null) {
|
|
|
- IntentUtils.linkCommonWeb(ct, Constants.BASE_CHARIT_PROJECT_URL
|
|
|
- + model.getId() + "/" + MyApplication.getInstance().getLoginUserId()
|
|
|
- , StringUtil.getMessage(R.string.charitable)
|
|
|
- , model.getMobileImg(), model.getName());
|
|
|
- }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ refreshListView.setAdapter(charitableAdapter);
|
|
|
+ refreshListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
|
|
|
+ @Override
|
|
|
+ public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
|
|
|
+ if (charitableAdapter != null) {
|
|
|
+ CharitModel model = charitableAdapter.getModels((int) l);
|
|
|
+ if (model != null) {
|
|
|
+ IntentUtils.linkCommonWeb(ct, Constants.BASE_CHARIT_PROJECT_URL
|
|
|
+ + model.getId() + "/" + MyApplication.getInstance().getLoginUserId()
|
|
|
+ , StringUtil.getMessage(R.string.charitable)
|
|
|
+ , model.getMobileImg(), model.getName());
|
|
|
}
|
|
|
}
|
|
|
- });
|
|
|
+ }
|
|
|
+ });
|
|
|
// } else {
|
|
|
// charitableAdapter.setModels(models);
|
|
|
// }
|