package com.thankcreate.care;
import com.markupartist.android.widget.ActionBar;
import com.markupartist.android.widget.ActionBar.Action;
import com.thankcreate.care.R;
import com.thankcreate.care.account.AccountActivity;
import com.thankcreate.care.lab.LabActivity;
import com.thankcreate.care.picture.PictureWallActivity;
import com.thankcreate.care.preference.PreferenceActivity;
import com.thankcreate.care.status.StatusTimelineActivity;
import com.thankcreate.care.tool.misc.BlessHelper;
import com.thankcreate.care.tool.misc.StringTool;
import com.thankcreate.care.tool.ui.RefreshViewerHelper;
import com.umeng.analytics.MobclickAgent;
import android.os.Bundle;
import android.app.Activity;
import android.app.TabActivity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.graphics.drawable.Drawable;
import android.util.DisplayMetrics;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.Window;
import android.widget.ImageView;
import android.widget.TabHost;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends TabActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setTabs();
setDensity();
fetchBlessing();
}
BlessHelper blessHelper;
private void fetchBlessing() {
blessHelper = new BlessHelper();
blessHelper.cacheBlessImages();
blessHelper.cacheBlessPassedItem();
}
protected void onResume() {
super.onResume();
// 父就别加了,否则统计有误,这统计很有问题
//MobclickAgent.onResume(this);
}
protected void onPause() {
super.onPause();
//MobclickAgent.onPause(this);
}
private void setDensity() {
DisplayMetrics metric = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metric);
App.density = metric.density;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return false;
}
private void setTabs()
{
addTab("主页", R.drawable.tab_home_selector, StatusTimelineActivity.class);
addTab("图片", R.drawable.tab_picture_selector, PictureWallActivity.class);
addTabMiddle("实验室", R.drawable.tab_microscope_selector, LabActivity.class);
addTab("帐号", R.drawable.tab_account_selector, AccountActivity.class);
addTab("设置", R.drawable.tab_settings_selector, PreferenceActivity.class);
SharedPreferences pref = App.getAppContext().getSharedPreferences(
AppConstants.PREFERENCES_NAME, Context.MODE_APPEND);
final Editor editor = pref.edit();
final String firstInMain = pref.getString("Global_FirstInMainActivity", "");
getTabWidget().setBackgroundResource(R.color.transparent);
getTabHost().setBackgroundResource(R.color.transparent);
// 如果是第一次进入,先进帐号设置页
if(StringTool.isNullOrEmpty(firstInMain))
{
editor.putString("Global_FirstInMainActivity", "WhatEver");
editor.commit();
getTabHost().setCurrentTab(3);
}
else
{
getTabHost().setCurrentTab(0);
}
getTabWidget().setDrawingCacheBackgroundColor(0);
}
private void addTab(String labelId, int drawableId, Class<?> c)
{
TabHost tabHost = getTabHost();
Intent intent = new Intent(this, c);
TabHost.TabSpec spec = tabHost.newTabSpec("tab" + labelId);
View tabIndicator = LayoutInflater.from(this).inflate(R.layout.tab_indicator, getTabWidget(), false);
TextView title = (TextView) tabIndicator.findViewById(R.id.title);
title.setText(labelId);
ImageView icon = (ImageView) tabIndicator.findViewById(R.id.icon);
icon.setImageResource(drawableId);
spec.setIndicator(tabIndicator);
spec.setContent(intent);
tabHost.addTab(spec);
tabHost.setBackgroundResource(R.color.transparent);
}
private void addTabMiddle(String labelId, int drawableId, Class<?> c)
{
TabHost tabHost = getTabHost();
Intent intent = new Intent(this, c);
TabHost.TabSpec spec = tabHost.newTabSpec("tab" + labelId);
View tabIndicator = LayoutInflater.from(this).inflate(R.layout.tab_indicator_middle, getTabWidget(), false);
ImageView icon = (ImageView) tabIndicator.findViewById(R.id.icon);
icon.setImageResource(drawableId);
spec.setIndicator(tabIndicator);
spec.setContent(intent);
tabHost.addTab(spec);
tabHost.setBackgroundResource(R.color.transparent);
}
public static Intent createIntent(Context context) {
Intent i = new Intent(context, MainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
return i;
}
}