package com.sogouchat.ui; import com.sogouchat.R; import com.sogouchat.SogouChatApp; import com.sogouchat.search.SearchMessageActivity; import com.sogouchat.widget.BadgeView; import android.app.ActivityGroup; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.support.v4.app.FragmentActivity; import android.util.Log; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.Window; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; import android.widget.ImageButton; public class SlidingActivity extends ActivityGroup implements OnClickListener { SlidingLayout mSlidingMenu; ImageButton mBtnMenu; SogouChatApp mApp; BadgeView mNewBadge; View mCurrentItem; View mMenu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); mSlidingMenu = new SlidingLayout(this); setContentView(mSlidingMenu); mApp = (SogouChatApp) getApplication(); mApp.mSliding = this; mMenu = getLayoutInflater().inflate(R.layout.sliding_menu, null); View content = getLayoutInflater().inflate(R.layout.sliding_main, null); initSlidingMenu(); ViewGroup tabContent = (ViewGroup) content .findViewById(R.id.sliding_body); Intent i = new Intent(this, NewsListActivity.class); View contentView = getLocalActivityManager().startActivity( NewsListActivity.class.getName(), i).getDecorView(); // tabView.setBackgroundColor(Color.WHITE); // tabContent.removeAllViews(); mBtnMenu = (ImageButton) contentView.findViewById(R.id.btn_menu); tabContent.addView(contentView, 0); mSlidingMenu.setMenu(mMenu); mSlidingMenu.setContent(content); final SogouChatApp app = (SogouChatApp)getApplication(); mSlidingMenu.setApp(app); mBtnMenu.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { mSlidingMenu.showMenu(); } }); // mBtnNew.setOnClickListener(new OnClickListener() { // @Override // public void onClick(View v) { // Intent intent = new Intent(); // intent.setClass(SlidingActivity.this, NewSmsActivity.class); // SlidingActivity.this.startActivity(intent); // } // }); // mBtnContact.setOnClickListener(new OnClickListener() { // @Override // public void onClick(View v) { // SogouChatApp app = (SogouChatApp) getApplication(); // app.mTabMain.switchToContact(); // } // }); } private void initSlidingMenu() { // TODO Auto-generated method stub View menuItem = (View)mMenu.findViewById(R.id.navi_tab_msg); menuItem.setOnClickListener(this); mCurrentItem = menuItem; mCurrentItem.setBackgroundResource(R.drawable.biz_navigation_tab_bg_pressed); menuItem = (View)mMenu.findViewById(R.id.navi_tab_new); menuItem.setOnClickListener(this); mNewBadge = new BadgeView(this, menuItem); // badge.setBackgroundResource(R.drawable.badge_ifaux); mNewBadge.setTextSize(10); mNewBadge.setBadgePosition(BadgeView.POSITION_TOP_RIGHT); menuItem = (View)mMenu.findViewById(R.id.navi_tab_setting); menuItem.setOnClickListener(this); menuItem = (View)mMenu.findViewById(R.id.navi_tab_about); menuItem.setOnClickListener(this); } @Override public boolean onCreateOptionsMenu(Menu menu) { // TODO Auto-generated method stub menu.addSubMenu(Menu.NONE,Menu.FIRST+1,1,"短信搜索").setIcon(android.R.drawable.ic_menu_search); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { // TODO Auto-generated method stub switch (item.getItemId()) { case Menu.FIRST+1: Intent intent = new Intent(); intent.setClass(this, SearchMessageActivity.class); startActivity(intent); break; default: break; } return super.onOptionsItemSelected(item); } @Override public void onClick(View v) { // TODO Auto-generated method stub mCurrentItem.setBackgroundDrawable(null); mSlidingMenu.showMenu(); mCurrentItem = v; mCurrentItem.setBackgroundResource(R.drawable.biz_navigation_tab_bg_pressed); switch(v.getId()){ case R.id.navi_tab_msg:{ mApp.mNewsList.switchToNew(false); } break; case R.id.navi_tab_new:{ mApp.mNewsList.switchToNew(true); } break; case R.id.navi_tab_setting:{ Intent intent = new Intent(); intent.setClass(this, settingActivity.class); startActivity(intent); } break; case R.id.navi_tab_about:{ Intent intent = new Intent(); intent.setClass(this, SgAbout.class); startActivity(intent); } break; } } public void setNewMsgNum(int num){ if (mNewBadge==null) return; if (num>0){ mNewBadge.setText(String.valueOf(num)); mNewBadge.show(); } else{ mNewBadge.hide(); } } public void switchItem(int index){ if(index == 0){ mCurrentItem.setBackgroundDrawable(null); View menuItem = (View)mMenu.findViewById(R.id.navi_tab_msg); mCurrentItem = menuItem; mCurrentItem.setBackgroundResource(R.drawable.biz_navigation_tab_bg_pressed); } } }