package com.hupu.games.fragment;
import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import com.hupu.games.R;
import com.hupu.games.activity.HupuBaseActivity;
import com.hupu.games.activity.HupuHomeActivity;
import com.hupu.games.activity.NBATeamActivity;
import com.hupu.games.adapter.BSStandingsListAdapter;
import com.hupu.games.common.HuPuRes;
import com.hupu.games.common.SharedPreferencesMgr;
import com.hupu.games.data.StandingsResp;
import com.hupu.games.data.TeamRankEntity;
/**
* NBA 排行
*
* @author panyongjun
* */
public class NbaStandingFragment extends BaseFragment {
private ListView mLvStandings;
private Button mBtnWest;
private Button mBtnEast;
private BSStandingsListAdapter mStandingAdapter;
private int curFrame;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
mAct = (HupuHomeActivity) getActivity();
super.onActivityCreated(savedInstanceState);
}
Click click;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_standing, container, false);
mBtnWest = (Button) v.findViewById(R.id.btn_west);
mBtnEast = (Button) v.findViewById(R.id.btn_east);
click = new Click();
mBtnWest.setOnClickListener(click);
mBtnEast.setOnClickListener(click);
mLvStandings = (ListView) v.findViewById(R.id.list_standings);
mLvStandings.setOnItemClickListener(new ListClick());
if (mStandingAdapter == null) {
mStandingAdapter = new BSStandingsListAdapter(getActivity());
} else {
if (curFrame == 1) {
mBtnWest.setTextColor(Color.WHITE);
mBtnWest.setBackgroundResource(R.drawable.btn_rank_type_bg_down);
mBtnEast.setBackgroundResource(R.drawable.btn_rank_type_selector);
mBtnEast.setTextColor(Color.GRAY);
}
mLvStandings.setAdapter(mStandingAdapter);
}
if(data ==null)
reqStandings();
return v;
}
public void setData(StandingsResp resp) {
if (mStandingAdapter != null)
mStandingAdapter.setData(resp);
data =resp;
mLvStandings.setAdapter(mStandingAdapter);
}
StandingsResp data;
private class Click implements OnClickListener {
@Override
public void onClick(View v) {
int id = v.getId();
switch (id) {
case R.id.btn_west:
curFrame = 1;
mStandingAdapter.switchToWest();
if (mStandingAdapter != null && mStandingAdapter.getCount() > 0)
mLvStandings.setSelection(0);
mBtnWest.setTextColor(Color.WHITE);
mBtnWest.setBackgroundResource(R.drawable.btn_rank_type_bg_down);
mBtnEast.setBackgroundResource(R.drawable.btn_rank_type_selector);
mBtnEast.setTextColor(Color.GRAY);
break;
case R.id.btn_east:
curFrame = 0;
mStandingAdapter.switchToEast();
if (mStandingAdapter != null && mStandingAdapter.getCount() > 0)
mLvStandings.setSelection(0);
mBtnEast.setTextColor(Color.WHITE);
mBtnEast.setBackgroundResource(R.drawable.btn_rank_type_bg_down);
mBtnWest.setBackgroundResource(R.drawable.btn_rank_type_selector);
mBtnWest.setTextColor(Color.GRAY);
break;
}
}
}
class ListClick implements OnItemClickListener {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int pos,
long arg3) {
((HupuBaseActivity) getActivity()).sendUmeng(HuPuRes.UMENG_EVENT_NBA_TEAMS, HuPuRes.UMENG_KEY_ENTRANCE,HuPuRes.UMENG_VALUE_NBA_RANK);
TeamRankEntity entity = mStandingAdapter.getItem(pos);
Intent in = new Intent(getActivity(),
NBATeamActivity.class);
in.putExtra("tid", entity.i_tid);
startActivity(in);
}
}
/** 请求排行数据 */
private void reqStandings() {
mParams = mAct.getHttpParams(true);
if (!mAct.isActiveFragment(this)) {
mParams.put("preload", "1");
}
mAct.sendAppRequest(HuPuRes.REQ_METHOD_GET_STANDINGS,null, mParams,new FragmentHttpResponseHandler());
}
@Override
public void onSuccess(Object o, int reqType) {
StandingsResp entity = (StandingsResp) o;
setData(entity);
}
public void onFailure(Throwable error, int reqType) {
}
}