package com.letv.watchball.fragment;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.view.InflateException;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import com.letv.watchball.R;
import com.letv.watchball.activity.MainActivity;
import com.letv.watchball.bean.MatchList.Body.Match;
/**
* 赛程列表fragment
*
* @author Liuheyuan
*
*/
public class ScheduleFragment extends Fragment {
private TextView schedule_fragment_title_tag;
private RadioGroup schedule_fragment_title_radioGroup;
private RadioButton schedule_fragment_radio_video;
private RadioButton schedule_fragment_radio_schedule;
private RadioButton schedule_fragment_radio_ranker;
private EventsVideoNewsFragment schedule_fragment_group_video;
private GScheduleListFragment schedule_fragment_group_schedule;
private RankerFragment schedule_fragment_group_rank;
private View view;
private Match match;
public ScheduleFragment() {
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
container.removeAllViews();
if (view != null) {
ViewGroup parent = (ViewGroup) view.getParent();
if (parent != null)
parent.removeView(view);
}
try {
view = inflater.inflate(R.layout.schedule_fragment, container,
false);
} catch (InflateException e) {
/* map is already there, just return view as it is */
}
// View view=inflater.inflate(R.layout.schedule_fragment,container,
// false);
return view;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if (getView() != null) {
schedule_fragment_title_tag = (TextView) getView().findViewById(
R.id.schedule_fragment_title_tag);
schedule_fragment_title_radioGroup = (RadioGroup) getView()
.findViewById(R.id.schedule_fragment_title_radioGroup);
schedule_fragment_radio_video = (RadioButton) getView()
.findViewById(R.id.schedule_fragment_radio_video);
schedule_fragment_radio_schedule = (RadioButton) getView()
.findViewById(R.id.schedule_fragment_radio_schedule);
schedule_fragment_radio_ranker = (RadioButton) getView()
.findViewById(R.id.schedule_fragment_radio_ranker);
schedule_fragment_group_video = (EventsVideoNewsFragment) getActivity()
.getSupportFragmentManager().findFragmentById(
R.id.schedule_fragment_group_video);
schedule_fragment_group_schedule = (GScheduleListFragment) getActivity()
.getSupportFragmentManager().findFragmentById(
R.id.schedule_fragment_group_schedule);
schedule_fragment_group_rank = (RankerFragment) getActivity()
.getSupportFragmentManager().findFragmentById(
R.id.schedule_fragment_group_rank);
schedule_fragment_title_radioGroup
.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group,
int checkedId) {
if (checkedId == R.id.schedule_fragment_radio_video) {
// 点击新闻
// schedule_fragment_radio_video.setTextColor(getResources().getColor(R.color.letv_header_tv_sel));
// schedule_fragment_radio_schedule.setTextColor(getResources().getColor(R.color.letv_header_tv_nor));
// schedule_fragment_radio_ranker.setTextColor(getResources().getColor(R.color.letv_header_tv_nor));
schedule_fragment_group_video.getView()
.setVisibility(View.VISIBLE);
schedule_fragment_group_schedule.getView()
.setVisibility(View.GONE);
schedule_fragment_group_rank.getView()
.setVisibility(View.GONE);
schedule_fragment_group_video.setMatch(match);
} else if (checkedId == R.id.schedule_fragment_radio_schedule) {
// 点击直播
// schedule_fragment_radio_video.setTextColor(getResources().getColor(R.color.letv_header_tv_nor));
// schedule_fragment_radio_schedule.setTextColor(getResources().getColor(R.color.letv_header_tv_sel));
// schedule_fragment_radio_ranker.setTextColor(getResources().getColor(R.color.letv_header_tv_nor));
schedule_fragment_group_video.getView()
.setVisibility(View.GONE);
schedule_fragment_group_schedule.getView()
.setVisibility(View.VISIBLE);
schedule_fragment_group_rank.getView()
.setVisibility(View.GONE);
schedule_fragment_group_schedule
.setMatch(match);
} else if (checkedId == R.id.schedule_fragment_radio_ranker) {
// 点击排名
// schedule_fragment_radio_video.setTextColor(getResources().getColor(R.color.letv_header_tv_nor));
// schedule_fragment_radio_schedule.setTextColor(getResources().getColor(R.color.letv_header_tv_nor));
// schedule_fragment_radio_ranker.setTextColor(getResources().getColor(R.color.letv_header_tv_sel));
schedule_fragment_group_video.getView()
.setVisibility(View.GONE);
schedule_fragment_group_schedule.getView()
.setVisibility(View.GONE);
schedule_fragment_group_rank.getView()
.setVisibility(View.VISIBLE);
schedule_fragment_group_rank.setMatch(match);
}
}
});
getView().findViewById(R.id.evnet_toggle_left).setOnClickListener(
new OnClickListener() {
@Override
public void onClick(View v) {
((MainActivity) getActivity()).toggle();
}
});
}
}
/**
* 设置赛事数据
*
* @param match
*/
public void setMatch(Match match) {
if (null != this.match && this.match.name.equals(match.name)) {
return;
}
this.match = match;
schedule_fragment_title_tag.setText(match.name);
// if(match.schedule.equals("1")){
// //支持赛程
// schedule_fragment_radio_schedule.setEnabled(true);
// }else{
// //不支持赛程
// schedule_fragment_radio_schedule.setEnabled(false);
// }
// if(match.rank.equals("1")){
// //支持排名
// schedule_fragment_radio_ranker.setEnabled(true);
// }else{
// //不支持排名
// schedule_fragment_radio_ranker.setEnabled(false);
// }
// 对欧冠篮球做特俗处理
if (match.type.equals("296") || match.name.equals("欧冠篮球")) {
schedule_fragment_title_radioGroup.setVisibility(View.GONE);
} else {
schedule_fragment_title_radioGroup.setVisibility(View.VISIBLE);
}
if (match.type.equals("296") || match.name.equals("NBA")) {
schedule_fragment_title_radioGroup.setVisibility(View.GONE);
} else {
schedule_fragment_title_radioGroup.setVisibility(View.VISIBLE);
}
schedule_fragment_radio_schedule.setChecked(true);
schedule_fragment_group_schedule.setMatch(match);
schedule_fragment_title_radioGroup
.check(R.id.schedule_fragment_radio_video);
}
@Override
public void onDestroyView() {
super.onDestroyView();
/**
* frament 销毁时,移除此fragment
*/
Fragment fragment = getFragmentManager().findFragmentById(
R.id.schedule_fragment);
FragmentTransaction ft = getActivity().getSupportFragmentManager()
.beginTransaction();
if (null != fragment && !ft.isEmpty()) {
ft.remove(schedule_fragment_group_video).commitAllowingStateLoss();
ft.remove(schedule_fragment_group_schedule)
.commitAllowingStateLoss();
ft.remove(fragment).commitAllowingStateLoss();
}
}
}