272 lines
8.0 KiB
Java
272 lines
8.0 KiB
Java
package cn.shangyu.gdxzExpert.activity;
|
|
|
|
import android.content.Intent;
|
|
import android.text.TextUtils;
|
|
import android.view.View;
|
|
import android.view.ViewGroup;
|
|
import android.widget.AdapterView;
|
|
import android.widget.AdapterView.OnItemClickListener;
|
|
import android.widget.BaseAdapter;
|
|
import android.widget.ImageView;
|
|
import android.widget.LinearLayout;
|
|
import android.widget.LinearLayout.LayoutParams;
|
|
import android.widget.ListView;
|
|
|
|
import com.gyf.immersionbar.ImmersionBar;
|
|
import com.nostra13.universalimageloader.core.ImageLoader;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
import cn.shangyu.gdxzExpert.R;
|
|
import cn.shangyu.gdxzExpert.base.BaseActivity;
|
|
import cn.shangyu.gdxzExpert.bean.TestingBean;
|
|
import cn.shangyu.gdxzExpert.http.OnCallBackFromNet;
|
|
import cn.shangyu.gdxzExpert.utils.CommonUtil;
|
|
import cn.shangyu.gdxzExpert.utils.GsonTools;
|
|
import cn.shangyu.gdxzExpert.utils.ImageOptions;
|
|
import cn.shangyu.gdxzExpert.utils.LogUtil;
|
|
import cn.shangyu.gdxzExpert.utils.StringUtil;
|
|
import cn.shangyu.gdxzExpert.utils.UIUtils;
|
|
import cn.shangyu.gdxzExpert.utils.Url;
|
|
import cn.shangyu.gdxzExpert.view.RollViewPager;
|
|
import cn.shangyu.gdxzExpert.view.RollViewPager.OnPagerClickCallback;
|
|
import cn.shangyu.gdxzExpert.widget.LoadingPage.ResultState;
|
|
|
|
public class TestingActivity extends BaseActivity implements OnCallBackFromNet,
|
|
OnItemClickListener {
|
|
private View view;
|
|
// private LinearLayout mLabel_one_news;
|
|
private View topNewsView;
|
|
private TestingActivity mActivity;
|
|
private LinearLayout dotLl;
|
|
private LinearLayout mViewPagerLay;
|
|
private ArrayList<String> urlList;
|
|
private RollViewPager mViewPager;
|
|
private ArrayList<View> dotList;
|
|
private ListView mLv_testing;
|
|
private TestingAdapter mAdapter;
|
|
private LinearLayout ll_hos_select;
|
|
|
|
@Override
|
|
public void setTitle() {
|
|
// TODO Auto-generated method stub
|
|
top_title.setText("肝病检测");
|
|
}
|
|
|
|
@Override
|
|
public View onCreateSuccessedView() {
|
|
// TODO Auto-generated method stub
|
|
ImmersionBar.with(this).keyboardEnable(true).statusBarDarkFont(true).titleBar(mToolbar).init();
|
|
view = UIUtils.inflate(R.layout.activity_testing);
|
|
mActivity = this;
|
|
// mLabel_one_news = (LinearLayout)
|
|
// view.findViewById(R.id.label_news);// 初始化RadioGroup布局
|
|
mLv_testing = (ListView) view.findViewById(R.id.lv_testing);
|
|
topNewsView = UIUtils.inflate(R.layout.layout_roll_testing_view);
|
|
dotLl = (LinearLayout) topNewsView.findViewById(R.id.dots_ll);
|
|
ll_hos_select = (LinearLayout) topNewsView
|
|
.findViewById(R.id.ll_hos_select);
|
|
mViewPagerLay = (LinearLayout) topNewsView
|
|
.findViewById(R.id.top_news_viewpager);
|
|
// newsAdapter = new NewsAdapter(mActivity);
|
|
// 根据手机尺寸设置顶部轮播图的宽高
|
|
int width = mActivity.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;
|
|
LogUtil.i("width=" + width + "height=" + height);
|
|
}
|
|
ViewGroup.LayoutParams ivLp = mViewPagerLay
|
|
.getLayoutParams();
|
|
ll_hos_select.setVisibility(View.GONE);
|
|
ivLp.width = width;
|
|
ivLp.height = height;
|
|
mAdapter = new TestingAdapter();
|
|
mViewPagerLay.setLayoutParams(ivLp);
|
|
mLv_testing.setOnItemClickListener(this);
|
|
getNewsList();
|
|
return view;
|
|
}
|
|
|
|
public final int GET_SCOLL_RESULT = 101;
|
|
|
|
private void getNewsList() {
|
|
Map<String, String> param = new HashMap<String, String>();
|
|
sendParamtoNet(Url.getDetectionIndex, param, GET_SCOLL_RESULT,
|
|
mActivity, false);
|
|
}
|
|
|
|
@Override
|
|
public ResultState onLoad() {
|
|
// TODO Auto-generated method stub
|
|
return ResultState.STATE_SUCCESSED;
|
|
}
|
|
|
|
@Override
|
|
protected void processClick(View v) {
|
|
// TODO Auto-generated method stub
|
|
switch (v.getId()) {
|
|
// case R.id.iv_testing_1:
|
|
|
|
// }
|
|
//
|
|
// break;
|
|
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void onCallbackFromThread(String resultJson) {
|
|
// TODO Auto-generated method stub
|
|
processData(resultJson);
|
|
}
|
|
|
|
TestingBean bean;
|
|
|
|
private void processData(String result) {
|
|
// TODO Auto-generated method stub
|
|
bean = GsonTools.fromGsonToBean(result, TestingBean.class);//
|
|
|
|
if (!StringUtil.isOneToCode(bean.code)) {
|
|
if (bean.roll != null && bean.roll.size() > 0) {
|
|
urlList = new ArrayList<String>();
|
|
for (int i = 0; i < bean.roll.size(); i++) {
|
|
if (!TextUtils.isEmpty(bean.roll.get(i).getImgpath())) {
|
|
urlList.add(Url.urlHtml + bean.roll.get(i).getImgpath());// //封面图片
|
|
} else {
|
|
urlList.add("");
|
|
}
|
|
}
|
|
// 轮播图的点
|
|
initDot(bean.roll.size());
|
|
mViewPager = new RollViewPager(mActivity, dotList,
|
|
R.drawable.dot_focus, R.drawable.dot_normal,
|
|
// 轮播图点击事件
|
|
new OnPagerClickCallback() {
|
|
@Override
|
|
public void onPagerClick(int position) {
|
|
Intent intent = new Intent(mActivity,
|
|
TestingUrlDetailActivity.class);
|
|
intent.putExtra("title", bean.roll
|
|
.get(position).getTitle());
|
|
intent.putExtra("imageurl", bean.roll
|
|
.get(position).getImgpath());
|
|
intent.putExtra("url", bean.roll.get(position)
|
|
.getPath());
|
|
startActivity(intent);
|
|
}
|
|
});
|
|
mViewPager.setLayoutParams(new LayoutParams(
|
|
LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
|
|
// top图片地址
|
|
mViewPager.setUriList(urlList);
|
|
// 开始滚动
|
|
mViewPager.startRoll();
|
|
// 加载到布局
|
|
mViewPagerLay.removeAllViews();
|
|
mViewPagerLay.addView(mViewPager);
|
|
mLv_testing.addHeaderView(topNewsView);
|
|
}
|
|
|
|
mLv_testing.setAdapter(mAdapter);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* 实例化轮播图点 initDot
|
|
*
|
|
* @param size
|
|
* void
|
|
*/
|
|
private void initDot(int size) {
|
|
dotList = new ArrayList<View>();
|
|
dotLl.removeAllViews();
|
|
for (int i = 0; i < size; i++) {
|
|
LayoutParams params = new LayoutParams(
|
|
CommonUtil.dip2px(mActivity, 6), CommonUtil.dip2px(
|
|
mActivity, 6));
|
|
params.setMargins(5, 0, 5, 0);
|
|
View m = new View(mActivity);
|
|
if (i == 0) {
|
|
m.setBackgroundResource(R.drawable.dot_focus);
|
|
} else {
|
|
m.setBackgroundResource(R.drawable.dot_normal);
|
|
}
|
|
m.setLayoutParams(params);
|
|
dotLl.addView(m);
|
|
dotList.add(m);
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void onCallBackFromThread(String resultJson, int resultCode) {
|
|
// TODO Auto-generated method stub
|
|
|
|
}
|
|
|
|
@Override
|
|
public void onStop() {
|
|
// TODO Auto-generated method stub
|
|
if (mViewPager != null) {
|
|
mViewPager.stopRunning();
|
|
}
|
|
super.onStop();
|
|
}
|
|
|
|
@Override
|
|
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
|
|
// TODO Auto-generated method stub
|
|
int headerViewsCount = mLv_testing.getHeaderViewsCount();
|
|
int position=arg2-headerViewsCount;
|
|
Intent intent = new Intent(mActivity, TestingDetailActivity.class);
|
|
intent.putExtra("title", bean.type_2.get(position).getTitle());
|
|
intent.putExtra("id", bean.type_2.get(position).getId());
|
|
intent.putExtra("call", bean.type_2.get(position).getContact());
|
|
startActivity(intent);
|
|
}
|
|
|
|
public class TestingAdapter extends BaseAdapter {
|
|
|
|
@Override
|
|
public int getCount() {
|
|
// TODO Auto-generated method stub
|
|
return bean.type_2.size();
|
|
}
|
|
|
|
@Override
|
|
public Object getItem(int arg0) {
|
|
// TODO Auto-generated method stub
|
|
return bean.type_2.get(arg0);
|
|
}
|
|
|
|
@Override
|
|
public long getItemId(int arg0) {
|
|
// TODO Auto-generated method stub
|
|
return arg0;
|
|
}
|
|
|
|
@Override
|
|
public View getView(int arg0, View arg1, ViewGroup arg2) {
|
|
// TODO Auto-generated method stub
|
|
View view = UIUtils.inflate(R.layout.item_testing_lv);
|
|
|
|
ImageView image = (ImageView) view.findViewById(R.id.iv_testing);
|
|
ImageLoader.getInstance().displayImage(
|
|
Url.urlHtml + bean.type_2.get(arg0).getImgpath(),
|
|
image,
|
|
ImageOptions
|
|
.getImageOptions(R.drawable.home_scroll_default));
|
|
return view;
|
|
}
|
|
|
|
}
|
|
}
|