package com.sogou.sogouchat.ui; import java.util.HashMap; import com.sogou.sogouchat.SogouChatApp; import com.sogou.sogouchat.bean.TelNode; import com.sogou.sogouchat.os.ChatAppConstant; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.support.v4.app.ListFragment; import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.widget.AbsListView; import android.widget.AbsListView.OnScrollListener; import android.widget.AdapterView; import android.widget.ListView; import android.widget.AdapterView.OnItemClickListener; public class NewsListFragment extends ListFragment implements OnScrollListener, OnTouchListener, OnItemClickListener{ private NewsListAdapter mAdapter; private ListView mListView; SogouChatApp mApp; public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); mListView = getListView(); mApp = (SogouChatApp)getActivity().getApplication(); mApp.mNewsListFrag = this; mListView.setOnScrollListener(this); mListView.setOnTouchListener(this); mAdapter = new NewsListAdapter(getActivity(), mApp); mListView.setOnItemClickListener(this); setListAdapter(mAdapter); } public void onResume(){ mAdapter.extraList(); // mAdapter.notifyDataSetChanged(); super.onResume(); } @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub return false; } @Override public void onScrollStateChanged(AbsListView view, int scrollState) { // TODO Auto-generated method stub } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { // TODO Auto-generated method stub } @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // Insert desired behavior here. Log.i("FragmentComplexList", "Item clicked: " + id); Intent intent = new Intent(); intent.setClass(getActivity(), ChatListActivity.class); Bundle bundle = new Bundle(); TelNode item = mAdapter.getData().get(position); String tel = item.mTel; if (tel == null) return; String name = item.mName; if (item.mNewMsgCnt >0){ mApp.mTabMain.setTotalNewMsgCntDelta(tel, item.mNewMsgCnt); item.mNewMsgCnt = 0; mAdapter.notifyDataSetChanged(); mApp.sendSrvForeMsg(ChatAppConstant.SRV_ForeMsg_Read_Sms, item.mTel, null); } bundle.putString("tel", tel); bundle.putString("name", name); intent.putExtras(bundle); getActivity().startActivity(intent); } public void updateListView( ){ mAdapter.extraList(); mAdapter.notifyDataSetChanged(); } }