package com.charon.video.fragment;
import com.charon.video.R;
import com.charon.video.UniversalVideoViewActivity;
import com.charon.video.domain.WebSite;
import com.charon.video.util.WebsiteUtil;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
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.ListView;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.List;
public class LiveFragment extends Fragment {
private ListView mListView;
private List<WebSite> mLiveSites;
private LiveAdapter mAdapter;
private Context mContext;
public static LiveFragment getInstance() {
LiveFragment liveFragment = new LiveFragment();
return liveFragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fr_live, null);
findView(view);
initView();
return view;
}
private void findView(View view) {
mListView = (ListView) view.findViewById(R.id.lv_list_live);
}
private void initView() {
mContext = getActivity();
mLiveSites = new ArrayList<WebSite>();
mAdapter = new LiveAdapter();
mLiveSites = WebsiteUtil.addLivesite(mLiveSites);
mListView.setAdapter(mAdapter);
mListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(mContext, UniversalVideoViewActivity.class);
intent.putExtra(OnlineFragment.URL, mLiveSites.get(position).getUrl());
intent.putExtra(OnlineFragment.LOCAL, false);
startActivity(intent);
}
});
}
private class LiveAdapter extends BaseAdapter {
@Override
public int getCount() {
if (mLiveSites != null) {
return mLiveSites.size();
}
return 0;
}
@Override
public Object getItem(int position) {
if (mLiveSites == null) {
return null;
}
return mLiveSites.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view;
ViewHolder holder;
if (convertView == null) {
final LayoutInflater mInflater = LiveFragment.this.getActivity()
.getLayoutInflater();
view = mInflater.inflate(R.layout.item_online, null, false);
holder = new ViewHolder();
holder.iv_cover = (ImageView) view.findViewById(R.id.iv_cover);
holder.tv_name = (TextView) view.findViewById(R.id.tv_name);
view.setTag(holder);
} else {
view = convertView;
holder = (ViewHolder) view.getTag();
}
WebSite webSite = mLiveSites.get(position);
holder.iv_cover.setImageResource(webSite.getResourceID());
holder.tv_name.setText(webSite.getTitle());
return view;
}
}
static class ViewHolder {
ImageView iv_cover;
TextView tv_name;
}
}