package com.withiter.quhao.activity; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentTransaction; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.view.inputmethod.InputMethodManager; import android.widget.ImageView; import android.widget.Toast; import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer; import com.withiter.quhao.QHClientApplication; import com.withiter.quhao.R; import com.withiter.quhao.domain.AccountInfo; import com.withiter.quhao.listener.ChangeToPersonFragmentListener; import com.withiter.quhao.util.ActivityUtil; import com.withiter.quhao.util.QuhaoLog; public class HomeFragmentNew extends Fragment implements OnClickListener { private static final int UNLOCK_CLICK = 1000; private String LOGTAG = HomeFragmentNew.class.getName(); private boolean isClick; private View contentView; private ImageView shareView; private ImageView merchantChatView; private ImageView getNumberView; private ImageView userImg; private DisplayImageOptions options; private ChangeToPersonFragmentListener listener; @Override public void onAttach(Activity activity) { Log.e("wjzwjz", "HomeFragment onAttach"); super.onAttach(activity); try { listener = (ChangeToPersonFragmentListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implementOnArticleSelectedListener"); } } @Override public void onActivityCreated(Bundle savedInstanceState) { Log.e("wjzwjz", "HomeFragment onActivityCreated"); super.onActivityCreated(savedInstanceState); } @Override public void onViewStateRestored(Bundle savedInstanceState) { Log.e("wjzwjz", "HomeFragment onViewStateRestored"); super.onViewStateRestored(savedInstanceState); } @Override public void onStart() { Log.e("wjzwjz", "HomeFragment onStart"); super.onStart(); } @Override public void onPause() { Log.e("wjzwjz", "HomeFragment onPause"); super.onPause(); } @Override public void onStop() { Log.e("wjzwjz", "HomeFragment onStop"); super.onStop(); } @Override public void onDestroyView() { Log.e("wjzwjz", "HomeFragment onDestroyView"); super.onDestroyView(); } @Override public void onDestroy() { Log.e("wjzwjz", "HomeFragment onDestroy"); super.onDestroy(); } @Override public void onDetach() { Log.e("wjzwjz", "HomeFragment onDetach"); super.onDetach(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // 检查网络 if (!ActivityUtil.isNetWorkAvailable(getActivity())) { Toast.makeText(getActivity(), R.string.network_error_info, Toast.LENGTH_SHORT).show(); } if(contentView != null) { ViewGroup vg = (ViewGroup) contentView.getParent(); vg.removeView(contentView); return contentView; } // 主页面layout contentView = inflater.inflate(R.layout.main_fragment_layout_new, container, false); merchantChatView = (ImageView) contentView.findViewById(R.id.btn_chat_room); getNumberView = (ImageView) contentView.findViewById(R.id.btn_get_number); shareView = (ImageView) contentView.findViewById(R.id.btn_share); merchantChatView.setOnClickListener(this); getNumberView.setOnClickListener(this); shareView.setOnClickListener(this); userImg = (ImageView) contentView.findViewById(R.id.home_user_img); userImg.setOnClickListener(this); InputMethodManager inputMethodManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.hideSoftInputFromWindow(shareView.getWindowToken(), 0); return contentView; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public void onResume() { super.onResume(); AccountInfo account = QHClientApplication.getInstance().accountInfo; if (account != null && QHClientApplication.getInstance().isLogined) { if (options == null) { options = new DisplayImageOptions.Builder() .showImageOnLoading(R.drawable.home_user_img_bg) .showImageForEmptyUri(R.drawable.home_user_img_bg) .showImageOnFail(R.drawable.home_user_img_bg) .cacheInMemory(true) .cacheOnDisk(true) .considerExifParams(true) .displayer(new RoundedBitmapDisplayer(140)) .build(); } ImageLoader.getInstance().displayImage(account.userImage, userImg, options); } else { userImg.setImageResource(R.drawable.home_page_user_img); } QuhaoLog.i(LOGTAG, LOGTAG + " onResume"); } protected Handler unlockHandler = new Handler() { public void handleMessage(Message msg) { if (msg.what == UNLOCK_CLICK) { isClick = false; } } }; @Override public void onClick(View v) { if (isClick) { return; } isClick = true; switch (v.getId()) { case R.id.btn_share: unlockHandler.sendEmptyMessageDelayed(UNLOCK_CLICK, 1000); Intent login1 = new Intent(getActivity(), ShareListActivity.class); login1.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); startActivity(login1); break; // 取号排队按钮事件 case R.id.btn_get_number: unlockHandler.sendEmptyMessageDelayed(UNLOCK_CLICK, 1000); // getCategoriesFromServerAndDisplay(); Intent intent3 = new Intent(); intent3.setClass(getActivity(), MerchantListActivity.class); startActivity(intent3); break; // 聊聊天吧按钮事件 case R.id.btn_chat_room: unlockHandler.sendEmptyMessageDelayed(UNLOCK_CLICK, 1000); if (QHClientApplication.getInstance().isLogined) { Intent attention = new Intent(); attention.setClass(getActivity(), MerchantChatRoomsActivity.class); startActivity(attention); } else { Intent login2 = new Intent(getActivity(), LoginActivity.class); login2.putExtra("activityName", this.getClass().getName()); login2.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); startActivity(login2); } break; case R.id.home_user_img: unlockHandler.sendEmptyMessageDelayed(UNLOCK_CLICK, 1000); if (QHClientApplication.getInstance().isLogined) { listener.changeToPersonFragment(); } else { Intent login2 = new Intent(getActivity(), LoginActivity.class); login2.putExtra("activityName", this.getClass().getName()); login2.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); startActivity(login2); } break; default: unlockHandler.sendEmptyMessageDelayed(UNLOCK_CLICK, 1000); break; } } }