package com.example.ipcplayer.localfragment; import java.util.ArrayList; import com.example.ipcplayer.R; import com.example.ipcplayer.adapter.AllSongListAdapter; import com.example.ipcplayer.controller.LocalMusicController; import com.example.ipcplayer.manager.LocalMusicManager; import com.example.ipcplayer.object.MusicFile; import com.example.ipcplayer.utils.LogUtil; import android.app.Activity; import android.content.Context; import android.database.Cursor; import android.os.Bundle; import android.support.v4.app.ListFragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ListView; import android.widget.TextView; public class AllSongListFragment extends ListFragment{ private static String TAG = AllSongListFragment.class.getSimpleName(); private static String sCurChoicePosition = "curChoicePosition"; private int mCurChoicePosition = 0; private Context mContext ; private ListView mLv ; private TextView mTv; private LocalMusicManager mLocalMusicManager; private Cursor mCursor; private AllSongListAdapter mAllSongListAdapter; private ArrayList<MusicFile> mPlayList = null; @Override public void onSaveInstanceState(Bundle savedInstanceState) { super.onSaveInstanceState(savedInstanceState); LogUtil.d(TAG + " onSavedInstanceState "); savedInstanceState.putInt(sCurChoicePosition, mCurChoicePosition); } @Override public void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); LogUtil.d(TAG + " onListItemClick "); LogUtil.d(TAG + " onListItemClick position: " + position + " id: " + id); mCurChoicePosition = position ; LocalMusicController.getInstance(mContext).playMusic(id,mCursor); } @Override public void onAttach(Activity activity) { mContext = getActivity(); super.onAttach(activity); LogUtil.d(TAG + " onAttach "); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); LogUtil.d(TAG + " onCreate "); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { LogUtil.d(TAG + " onCreateView "); View v = inflater.inflate(R.layout.all_song_list,container, false); // mLv = (ListView) v.findViewById(R.id.list); // mLv = getListView(); // LogUtil.d(TAG + " mLv = " + mLv); mTv = (TextView) v.findViewById(R.id.empty); return v ; } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); LogUtil.d(TAG + " onActivityCreated "); if(savedInstanceState != null){ mCurChoicePosition = savedInstanceState.getInt(sCurChoicePosition,0); } mLocalMusicManager = new LocalMusicManager(mContext); mCursor = mLocalMusicManager.getAllSongCursor(); if(mCursor == null){ LogUtil.d(TAG + " mCursor is null"); }else { LogUtil.d(TAG + " mCursor = " + mCursor); } mAllSongListAdapter = new AllSongListAdapter(mContext,mCursor,R.layout.all_song_list_item); if(mAllSongListAdapter == null){ LogUtil.d(TAG + " mAllSongListAdapter is null "); } if(mLv == null){ LogUtil.d(TAG + " mLv is null "); } getListView().setAdapter(mAllSongListAdapter); } @Override public void onStart() { super.onStart(); LogUtil.d(TAG + " onStart "); } @Override public void onResume() { super.onResume(); LogUtil.d(TAG + " onResume "); } @Override public void onPause() { super.onPause(); LogUtil.d(TAG + " onPause "); } @Override public void onStop() { super.onStop(); LogUtil.d(TAG + " onStop "); } @Override public void onDestroyView() { super.onDestroyView(); LogUtil.d(TAG + " onDestroyView "); } @Override public void onDestroy() { super.onDestroy(); LogUtil.d(TAG + " onDestroy "); LocalMusicController.releaseInstance(); if(mCursor != null){ mCursor.close(); mCursor = null ; } } @Override public void onDetach() { super.onDetach(); LogUtil.d(TAG + " onDetach "); } }