import java.util.List;
import com.bwie.test.R;
import com.bwie.test.SharedPreferences.MySharedPreferences;
import com.bwie.test.adapter.MyGridadapter;
import com.bwie.test.adapter.Myadapter3;
import com.bwie.test.bean.FengleiBean;
import com.bwie.test.bean.FengleiBean.DATA1.Category;
import com.bwie.test.bean.FengleiBean.DATA1.GoodsBrief;
import com.bwie.test.draw.MyGridView;
import com.bwie.test.fenlei.TypeActivity;
import com.bwie.test.shouye.DetailsActivity;
import com.bwie.test.shouye.ShoppingAll;
import com.bwie.test.utils.NetUtils;
import com.bwie.test.utils.NewWorkUtils;
import com.google.gson.Gson;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.Fragment;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.AnimationUtils;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.TextView;
@SuppressLint("HandlerLeak") public class Fenlei_Fragment extends Fragment implements OnClickListener{
private View view;
private Context context;
private ImageView anim;
private GridView gridView;
List<GoodsBrief> list;
List<Category> list1;
private String json;
private MyGridView gridView1;
private String path1="http://m.yunifang.com/yunifang/mobile/category/list?random=9503&encode=e181334d0cd93bf2ec95f3c9f85d1dde";
private Handler handler=new Handler(){
public void handleMessage(android.os.Message msg) {
gridView1.setAdapter(new MyGridadapter(context, list));
};
};
private TextView shopall;
private Intent intent;
private ImageView gongxiao;
private ImageView shuxing;
private ImageView fuzhi;
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
context = this.getActivity();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
boolean connectionToInternet=NetUtils.isConnectingToInternet(context);
if (connectionToInternet) {
view = View.inflate(getActivity(), R.layout.fenlei_fragment, null);
//获得控件
Initview();
//获得数据
Initdata();
//创建适配器并分配
gridView.setAdapter(new Myadapter3(context));
//商品详情
MyGridviewClick();
//点击事跳转页面
Gridonclick();
}else {
view = View.inflate(getActivity(), R.layout.internet, null);
anim = (ImageView)view.findViewById(R.id.loading);
Animation animation=AnimationUtils.loadAnimation(context, R.anim.refresh);
anim.startAnimation(animation);
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
anim.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationRepeat(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationEnd(Animation animation) {
anim.setVisibility(View.GONE);
}
});
}
return view;
}
private void Gridonclick() {
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
intent=new Intent(getActivity(),TypeActivity.class);
if (arg2==0) {
intent.putExtra("type", 0+"");
intent.putExtra("type1", "0");
}else if (arg2==1) {
intent.putExtra("type", 0+"");
intent.putExtra("type1", "1");
}else if (arg2==2) {
intent.putExtra("type", 1+"");
intent.putExtra("type1", "4");
}else if (arg2==3) {
intent.putExtra("type", 1+"");
intent.putExtra("type1", "5");
}else if (arg2==4) {
intent.putExtra("type", 1+"");
intent.putExtra("type1", "2");
}else if (arg2==5) {
intent.putExtra("type", 1+"");
intent.putExtra("type1", "3");
}
startActivity(intent);
}
});
}
private void MyGridviewClick() {
gridView1.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
intent=new Intent(getActivity(),DetailsActivity.class);
intent.putExtra("id", list.get(arg2).id);
startActivity(intent);
}
});
}
/**
* json串数据
*/
private void Initdata() {
new Thread(){
public void run() {
String data=MySharedPreferences.getString2(getActivity());
boolean flag=TextUtils.isEmpty(data);
if (!flag) {
json=MySharedPreferences.getString2(getActivity());
}else{
json = NewWorkUtils.getstr(path1,getActivity());
MySharedPreferences.putString2(getActivity(), json);
}
Gson gson=new Gson();
FengleiBean bean=gson.fromJson(json, FengleiBean.class);
list=bean.data.goodsBrief;
list1=bean.data.category;
handler.sendEmptyMessage(0);
};
}.start();
}
/**
* 获得控件
*/
private void Initview() {
gridView = (GridView)view.findViewById(R.id.grid1);
gridView1 = (MyGridView)view.findViewById(R.id.grid2);
shopall = (TextView)view.findViewById(R.id.shop);
gongxiao = (ImageView)view.findViewById(R.id.imageView2);
shuxing = (ImageView)view.findViewById(R.id.imageView3);
fuzhi = (ImageView)view.findViewById(R.id.imageView4);
gongxiao.setOnClickListener(this);
shuxing.setOnClickListener(this);
fuzhi.setOnClickListener(this);
shopall.setOnClickListener(this);
}
private String path0="http://m.yunifang.com/yunifang/mobile/goods/getall?random=87749&encode=ac6bd45b8f50b626a6843b294af8fed5";
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.shop:
intent = new Intent(getActivity(),ShoppingAll.class);
intent.putExtra("www", path0);
startActivity(intent);
break;
case R.id.imageView2:
intent = new Intent(getActivity(),TypeActivity.class);
intent.putExtra("name", list1.get(0).cat_name);
intent.putExtra("type", 0+"");
startActivity(intent);
break;
case R.id.imageView3:
intent = new Intent(getActivity(),TypeActivity.class);
intent.putExtra("name", list1.get(1).cat_name);
intent.putExtra("type", 1+"");
startActivity(intent);
break;
case R.id.imageView4:
intent = new Intent(getActivity(),TypeActivity.class);
intent.putExtra("name", list1.get(2).cat_name);
intent.putExtra("type", 1+"");
startActivity(intent);
break;
default:
break;
}
}
}
*******************************************************************************************
public class NetUtils {
public static boolean isConnectingToInternet(Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null) {
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
for (int i = 0; i < info.length; i++)
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}
}
return false;
}
}