package com.bosi.chineseclass.han.fragments;
import java.util.HashMap;
import java.util.List;
import android.content.Intent;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.TextView;
import com.bosi.chineseclass.AppDefine;
import com.bosi.chineseclass.BaseFragment;
import com.bosi.chineseclass.R;
import com.bosi.chineseclass.han.activitys.ZyObjectActivity;
import com.bosi.chineseclass.han.db.ZyCategoryDbOperation;
import com.bosi.chineseclass.han.db.ZyCategoryInfo;
import com.bosi.chineseclass.han.modle.ZyCategoryAdapter;
import com.lidroid.xutils.view.annotation.ViewInject;
public class ZyCategoryFragment extends BaseFragment {
private int mCategoryType = 0;
@ViewInject(R.id.title_category)
private TextView mTitleTV;
private HashMap mTitles;
@ViewInject(R.id.zy_category_grid)
private GridView mGridView;
private ZyCategoryAdapter mGridAdapter;
private Intent mIntent;
private List<ZyCategoryInfo> mIconList = null;
@Override
protected View getBasedView() {
return inflater.inflate(R.layout.fragment_layout_zy_category, null);
}
@Override
protected void afterViewInject() {
mIconList = getZyInfoList();
mIntent = new Intent(mActivity, ZyObjectActivity.class);
initTitle();
initGridView();
}
public void setCategory(int mCategory) {
this.mCategoryType = mCategory;
}
private List<ZyCategoryInfo> getZyInfoList() {
ZyCategoryDbOperation gameDbOperation = new ZyCategoryDbOperation();
String sql = "select * from zy_category where type = " + mCategoryType;
List<ZyCategoryInfo> iconList = gameDbOperation.selectDataFromDb(sql);
return iconList;
}
private void initTitle() {
String title = getTitleStr();
mTitleTV.setText(title);
}
private String getTitleStr() {
HashMap<Integer, String> titles = new HashMap<Integer, String>();
titles.put(AppDefine.ZYDefine.CATEGORY_ZIRAN, getStringByid(R.string.category_ziran));
titles.put(AppDefine.ZYDefine.CATEGORY_ZHIWU, getStringByid(R.string.category_zhiwu));
titles.put(AppDefine.ZYDefine.CATEGORY_REN, getStringByid(R.string.category_ren));
titles.put(AppDefine.ZYDefine.CATEGORY_QIWU, getStringByid(R.string.category_qiwu));
titles.put(AppDefine.ZYDefine.CATEGORY_ZIRAN, getStringByid(R.string.category_ziran));
String title = String.format(getStringByid(R.string.category_title), titles.get(mCategoryType), mIconList.size());
return title;
}
private String getStringByid(int id){
return getResources().getString(id);
}
private void initGridView() {
mGridAdapter = new ZyCategoryAdapter(mActivity, mIconList);
//TODO:不同类别,mGridView的列数不同(mCategoryType)
mGridView.setAdapter(mGridAdapter);
mGridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapter, View view, int currenItemIndex,
long arg3) {
mIntent.putExtra(AppDefine.ZYDefine.ZY_OBJECT_ID,
mIconList.get(currenItemIndex).getWeb_path_id());
startActivity(mIntent);
}
});
}
}