33
This commit is contained in:
@@ -0,0 +1,337 @@
|
||||
package cn.shangyu.gdxzExpert.polyvplayer;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.view.View;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.ListView;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.gyf.immersionbar.ImmersionBar;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import cn.shangyu.gdxzExpert.R;
|
||||
import cn.shangyu.gdxzExpert.base.BaseActivity;
|
||||
import cn.shangyu.gdxzExpert.bean.ListFreeBean;
|
||||
import cn.shangyu.gdxzExpert.bean.ListSeriesTypeBean;
|
||||
import cn.shangyu.gdxzExpert.bean.SeriesVideoNewsListBean;
|
||||
import cn.shangyu.gdxzExpert.big.activity.BigPointsMallActivity;
|
||||
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
|
||||
import cn.shangyu.gdxzExpert.pointsmall.BuyIntegerActivty;
|
||||
import cn.shangyu.gdxzExpert.pointsmall.IntegralTicketActivity;
|
||||
import cn.shangyu.gdxzExpert.pointsmall.PointsMallActivity;
|
||||
import cn.shangyu.gdxzExpert.polyvplayer.adapter.ExchangeAdapter;
|
||||
import cn.shangyu.gdxzExpert.pulltorefreshview.PullToRefreshListView;
|
||||
import cn.shangyu.gdxzExpert.ui.CustomProgressDialog;
|
||||
import cn.shangyu.gdxzExpert.utils.CommonUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.LogUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.ToastUtil;
|
||||
import cn.shangyu.gdxzExpert.utils.UIUtils;
|
||||
import cn.shangyu.gdxzExpert.utils.Url;
|
||||
import cn.shangyu.gdxzExpert.view.RollViewPager;
|
||||
import cn.shangyu.gdxzExpert.widget.LoadingPage;
|
||||
|
||||
import static cn.shangyu.gdxzExpert.utils.CommonUtil.BigModule;
|
||||
|
||||
/**
|
||||
* Created by WANGChengXin on 2019/3/25.
|
||||
*/
|
||||
|
||||
public class QualityCourseActivity extends BaseActivity implements OnCallBackFromNet{
|
||||
private CustomProgressDialog pd;
|
||||
private LinearLayout top_news_viewpager;
|
||||
private LinearLayout dots_ll;
|
||||
private PullToRefreshListView lv_exchange;
|
||||
private LinearLayout headerView;
|
||||
public static final int FREE=1;
|
||||
public static final int EXCHANGE=2;
|
||||
public static final int NEWS=3;
|
||||
private RelativeLayout rl_exchange,rl_free;
|
||||
private ListSeriesTypeBean listSeriesTypeBean;
|
||||
private ListFreeBean listFreeBean;
|
||||
private LinearLayout ll_free2,ll_free1;
|
||||
private TextView tv_free1,tv_free2;
|
||||
private SeriesVideoNewsListBean seriesVideoNewsListBean;
|
||||
private RollViewPager mViewPager;
|
||||
private ArrayList<View> dotList;
|
||||
private View free_line;
|
||||
private LinearLayout ll_jifenshop,ll_integraltickit,ll_buy_point;
|
||||
@Override
|
||||
public void setTitle() {
|
||||
top_title.setText("精品课程");
|
||||
}
|
||||
|
||||
@Override
|
||||
public View onCreateSuccessedView() {
|
||||
ImmersionBar.with(this).keyboardEnable(true).statusBarDarkFont(true).titleBar(mToolbar).init();
|
||||
View view = UIUtils.inflate(R.layout.activity_qualitycourse);
|
||||
lv_exchange = view.findViewById(R.id.lv_exchange);
|
||||
ll_jifenshop = view.findViewById(R.id.ll_point_shop);
|
||||
ll_integraltickit = view.findViewById(R.id.ll_integraltickit);
|
||||
ll_buy_point = view.findViewById(R.id.ll_buy_point);
|
||||
headerView = (LinearLayout) getLayoutInflater().inflate(R.layout.activity_qualitycourse_header, null);
|
||||
initView(headerView);
|
||||
ListView refreshableView = lv_exchange.getRefreshableView();
|
||||
refreshableView.addHeaderView(headerView);
|
||||
pd = new CustomProgressDialog(this, "请稍候");
|
||||
pd.show();
|
||||
initOnClick();
|
||||
getData();
|
||||
return view;
|
||||
}
|
||||
|
||||
private void initOnClick() {
|
||||
rl_exchange.setOnClickListener(this);
|
||||
rl_free.setOnClickListener(this);
|
||||
ll_free1.setOnClickListener(this);
|
||||
ll_free2.setOnClickListener(this);
|
||||
ll_jifenshop.setOnClickListener(this);
|
||||
ll_buy_point.setOnClickListener(this);
|
||||
ll_integraltickit.setOnClickListener(this);
|
||||
lv_exchange.setOnItemClickListener(new AdapterView.OnItemClickListener() {
|
||||
@Override
|
||||
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
|
||||
int i = position - 2;
|
||||
String uuid = listSeriesTypeBean.getData().getList().get(i).getUuid();
|
||||
Intent intent = PolyvPlayerActivity.newIntent(QualityCourseActivity.this, PolyvPlayerActivity.PlayMode.portrait, "");
|
||||
intent.putExtra("isVlmsOnline", false);
|
||||
intent.putExtra("series_type_uuid", uuid);
|
||||
startActivity(intent);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void getData() {
|
||||
Map<String,String> map = new HashMap<>();
|
||||
map.put("page","1");
|
||||
map.put("title","");
|
||||
map.put("keywords","");
|
||||
map.put("sort","");
|
||||
sendJsonPostParamtoNetSignMD5(Url.listSeriesType,map,EXCHANGE,this);
|
||||
|
||||
Map<String,String> map1 = new HashMap<>();
|
||||
map1.put("page","1");
|
||||
map1.put("title","");
|
||||
map1.put("keywords","");
|
||||
map1.put("sort","2");
|
||||
sendJsonPostParamtoNetSignMD5(Url.listFree,map1,FREE,this);
|
||||
|
||||
|
||||
Map<String,String> map2 = new HashMap<>();
|
||||
sendJsonPostParamtoNetSignMD5(Url.SeriesVideoNewsList,map2,NEWS,this);
|
||||
|
||||
|
||||
}
|
||||
|
||||
private void initView(View view) {
|
||||
top_news_viewpager = (LinearLayout) view.findViewById(R.id.top_news_viewpager);
|
||||
dots_ll = (LinearLayout) view.findViewById(R.id.dots_ll);
|
||||
rl_exchange = view.findViewById(R.id.rl_exchange);
|
||||
rl_free = view.findViewById(R.id.rl_free);
|
||||
ll_free2 = view.findViewById(R.id.ll_free2);
|
||||
ll_free1 = view.findViewById(R.id.ll_free1);
|
||||
tv_free1 = view.findViewById(R.id.tv_free1);
|
||||
tv_free2 = view.findViewById(R.id.tv_free2);
|
||||
free_line = view.findViewById(R.id.free_line);
|
||||
|
||||
top_news_viewpager.setFocusable(true);
|
||||
top_news_viewpager.setFocusableInTouchMode(true);
|
||||
top_news_viewpager.requestFocus();
|
||||
int width =getResources().getDisplayMetrics().widthPixels;
|
||||
// int height = CommonUtil.dip2px(mActivity, 180);
|
||||
int height = width * 320 / 640;
|
||||
if (width < 720) {
|
||||
height = width * 7 / 16 - 10;
|
||||
// height = width/2;
|
||||
|
||||
}
|
||||
android.view.ViewGroup.LayoutParams ivLp = top_news_viewpager
|
||||
.getLayoutParams();
|
||||
ivLp.width = width;
|
||||
ivLp.height = height;
|
||||
top_news_viewpager.setLayoutParams(ivLp);
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public LoadingPage.ResultState onLoad() {
|
||||
return LoadingPage.ResultState.STATE_SUCCESSED;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void processClick(View v) {
|
||||
switch (v.getId()){
|
||||
case R.id.rl_exchange:
|
||||
Intent intent = new Intent(QualityCourseActivity.this, ExchangeAreaActivity.class);
|
||||
startActivity(intent);
|
||||
break;
|
||||
case R.id.rl_free:
|
||||
startActivity(new Intent(QualityCourseActivity.this,FreeAreaActivity.class));
|
||||
break;
|
||||
case R.id.ll_free1:
|
||||
intent = PolyvPlayerActivity.newIntent(QualityCourseActivity.this, PolyvPlayerActivity.PlayMode.portrait, listFreeBean.getData().getList().get(0).getPolyv_uuid());
|
||||
intent.putExtra("startNow", true);
|
||||
intent.putExtra("isVlmsOnline", false);
|
||||
intent.putExtra("series_type_uuid", listFreeBean.getData().getList().get(0).getSeries_type_uuid());
|
||||
intent.putExtra("uuid", listFreeBean.getData().getList().get(0).getUuid());
|
||||
startActivity(intent);
|
||||
break;
|
||||
case R.id.ll_free2:
|
||||
intent = PolyvPlayerActivity.newIntent(QualityCourseActivity.this, PolyvPlayerActivity.PlayMode.portrait,listFreeBean.getData().getList().get(1).getPolyv_uuid());
|
||||
intent.putExtra("isVlmsOnline", false);
|
||||
intent.putExtra("startNow", true);
|
||||
intent.putExtra("series_type_uuid", listFreeBean.getData().getList().get(1).getSeries_type_uuid());
|
||||
intent.putExtra("uuid", listFreeBean.getData().getList().get(1).getUuid());
|
||||
startActivity(intent);
|
||||
break;
|
||||
case R.id.ll_point_shop://积分商城
|
||||
if(BigModule())
|
||||
{
|
||||
Intent intent3 = new Intent(QualityCourseActivity.this, BigPointsMallActivity.class);
|
||||
startActivity(intent3);
|
||||
}
|
||||
else
|
||||
{
|
||||
Intent intent3 = new Intent(QualityCourseActivity.this, PointsMallActivity.class);
|
||||
startActivity(intent3);
|
||||
}
|
||||
|
||||
break;
|
||||
case R.id.ll_integraltickit://积分券
|
||||
Intent intent1 = new Intent(QualityCourseActivity.this, IntegralTicketActivity.class);
|
||||
startActivity(intent1);
|
||||
break;
|
||||
case R.id.ll_buy_point://购买积分
|
||||
Intent intent2 = new Intent(QualityCourseActivity.this, BuyIntegerActivty.class);
|
||||
startActivity(intent2);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCallbackFromThread(String resultJson) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCallBackFromThread(String resultJson, int resultCode) {
|
||||
pd.dismiss();
|
||||
switch (resultCode){
|
||||
case EXCHANGE:
|
||||
LogUtil.i("EXCHANGE = "+resultJson);
|
||||
Gson gson = new Gson();
|
||||
listSeriesTypeBean = gson.fromJson(resultJson, ListSeriesTypeBean.class);
|
||||
if (listSeriesTypeBean.getData()!=null){
|
||||
|
||||
ExchangeAdapter adapter = null;
|
||||
if (listSeriesTypeBean.getData().getList().size()>=3){
|
||||
List<ListSeriesTypeBean.DataBean.ListBean> list = new ArrayList<>();
|
||||
for (int i = 0;i<3;i++){
|
||||
list.add(listSeriesTypeBean.getData().getList().get(i));
|
||||
adapter = new ExchangeAdapter(QualityCourseActivity.this,list);
|
||||
}
|
||||
}else {
|
||||
adapter = new ExchangeAdapter(QualityCourseActivity.this,listSeriesTypeBean.getData().getList());
|
||||
}
|
||||
|
||||
lv_exchange.setAdapter(adapter);
|
||||
}
|
||||
break;
|
||||
case FREE:
|
||||
LogUtil.i("FREE = "+resultJson);
|
||||
Gson gson1 = new Gson();
|
||||
listFreeBean = gson1.fromJson(resultJson, ListFreeBean.class);
|
||||
if (listFreeBean.getData()!=null){
|
||||
if (listFreeBean.getData().getList().size()==0){
|
||||
rl_free.setVisibility(View.GONE);
|
||||
ll_free2.setVisibility(View.GONE);
|
||||
ll_free1.setVisibility(View.GONE);
|
||||
free_line.setVisibility(View.GONE);
|
||||
}else if (listFreeBean.getData().getList().size()>1){
|
||||
ll_free2.setVisibility(View.VISIBLE);
|
||||
tv_free1.setText(listFreeBean.getData().getList().get(0).getTitle());
|
||||
tv_free2.setText(listFreeBean.getData().getList().get(1).getTitle());
|
||||
}else {
|
||||
tv_free1.setText(listFreeBean.getData().getList().get(0).getTitle());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
case NEWS:
|
||||
LogUtil.i("NEWS = "+resultJson);
|
||||
Gson gson3 = new Gson();
|
||||
seriesVideoNewsListBean = gson3.fromJson(resultJson, SeriesVideoNewsListBean.class);
|
||||
if (seriesVideoNewsListBean!=null&&"200".equals(seriesVideoNewsListBean.getCode())&&seriesVideoNewsListBean.getData().size()!=0) {
|
||||
// 轮播图的点
|
||||
initDot(seriesVideoNewsListBean.getData().size());
|
||||
mViewPager = new RollViewPager(QualityCourseActivity.this, dotList,
|
||||
R.drawable.dot_white, R.drawable.dot_normal,
|
||||
// 轮播图点击事件
|
||||
new RollViewPager.OnPagerClickCallback() {
|
||||
@Override
|
||||
public void onPagerClick(int position) {
|
||||
Intent intent = PolyvPlayerActivity.newIntent(QualityCourseActivity.this, PolyvPlayerActivity.PlayMode.portrait, "");
|
||||
intent.putExtra("isVlmsOnline", false);
|
||||
intent.putExtra("series_type_uuid",seriesVideoNewsListBean.getData().get(position).getUuid());
|
||||
startActivity(intent);
|
||||
}
|
||||
});
|
||||
mViewPager.setLayoutParams(new LinearLayout.LayoutParams(
|
||||
LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));
|
||||
// top图片地址
|
||||
ArrayList<String> list = new ArrayList<>();
|
||||
for (int i = 0; i < seriesVideoNewsListBean.getData().size(); i++) {
|
||||
list.add(Url.urlHtml+seriesVideoNewsListBean.getData().get(i).getImg());
|
||||
}
|
||||
mViewPager.setUriList(list);
|
||||
// 开始滚动
|
||||
mViewPager.startRoll();
|
||||
// top标题
|
||||
// mViewPager.setTitle(topNewsTitle, seriesVideoNewsListBean);
|
||||
// 加载到布局
|
||||
top_news_viewpager.removeAllViews();
|
||||
top_news_viewpager.addView(mViewPager);
|
||||
|
||||
}else {
|
||||
ToastUtil.showMessage("请求失败");
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 实例化轮播图点 initDot
|
||||
*
|
||||
* @param size
|
||||
* void
|
||||
*/
|
||||
private void initDot(int size) {
|
||||
dotList = new ArrayList<View>();
|
||||
dots_ll.removeAllViews();
|
||||
for (int i = 0; i < size; i++) {
|
||||
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
|
||||
CommonUtil.dip2px(this, 6), CommonUtil.dip2px(
|
||||
this, 6));
|
||||
params.setMargins(10, 0, 5, 0);
|
||||
View m = new View(this);
|
||||
if (i == 0) {
|
||||
m.setBackgroundResource(R.drawable.dot_white);
|
||||
} else {
|
||||
m.setBackgroundResource(R.drawable.dot_normal);
|
||||
}
|
||||
m.setLayoutParams(params);
|
||||
dots_ll.addView(m);
|
||||
dotList.add(m);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user