Back to project page SoundRecorder.
The source code is released under:
MIT License
If you think the Android project SoundRecorder listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.danielkim.soundrecorder.fragments; //from w w w .j av a 2s . c o m import android.os.Bundle; import android.os.FileObserver; import android.support.v4.app.Fragment; import android.support.v7.widget.DefaultItemAnimator; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import com.danielkim.soundrecorder.R; import com.danielkim.soundrecorder.adapters.FileViewerAdapter; /** * Created by Daniel on 12/23/2014. */ public class FileViewerFragment extends Fragment{ private static final String ARG_POSITION = "position"; private static final String LOG_TAG = "FileViewerFragment"; private int position; private FileViewerAdapter mFileViewerAdapter; public static FileViewerFragment newInstance(int position) { FileViewerFragment f = new FileViewerFragment(); Bundle b = new Bundle(); b.putInt(ARG_POSITION, position); f.setArguments(b); return f; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); position = getArguments().getInt(ARG_POSITION); observer.startWatching(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.fragment_file_viewer, container, false); RecyclerView mRecyclerView = (RecyclerView) v.findViewById(R.id.recyclerView); mRecyclerView.setHasFixedSize(true); LinearLayoutManager llm = new LinearLayoutManager(getActivity()); llm.setOrientation(LinearLayoutManager.VERTICAL); //newest to oldest order (database stores from oldest to newest) llm.setReverseLayout(true); llm.setStackFromEnd(true); mRecyclerView.setLayoutManager(llm); mRecyclerView.setItemAnimator(new DefaultItemAnimator()); mFileViewerAdapter = new FileViewerAdapter(getActivity(), llm); mRecyclerView.setAdapter(mFileViewerAdapter); return v; } FileObserver observer = new FileObserver(android.os.Environment.getExternalStorageDirectory().toString() + "/SoundRecorder") { // set up a file observer to watch this directory on sd card @Override public void onEvent(int event, String file) { if(event == FileObserver.DELETE){ // user deletes a recording file out of the app String filePath = android.os.Environment.getExternalStorageDirectory().toString() + "/SoundRecorder" + file + "]"; Log.d(LOG_TAG, "File deleted [" + android.os.Environment.getExternalStorageDirectory().toString() + "/SoundRecorder" + file + "]"); // remove file from database and recyclerview mFileViewerAdapter.removeOutOfApp(filePath); } } }; }