// 点击事件 @SuppressWarnings("deprecation") private void onCategorySelected(FileCategory f) { if (mFileCagetoryHelper.getCurCategory() != f) { mFileCagetoryHelper.setCurCategory(f); mFileViewInteractionHub.setCurrentPath( mFileViewInteractionHub.getRootPath() + getString(mFileCagetoryHelper.getCurCategoryNameResId())); mFileViewInteractionHub.refreshFileList(); } if (f == FileCategory.Favorite) { showPage(ViewPage.Favorite); FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_favorite); } else { showPage(ViewPage.Category); if (f == FileCategory.Music) { FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_music); } else if (f == FileCategory.Video) { FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_video); } else if (f == FileCategory.Picture) { FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_picture); } else if (f == FileCategory.Theme) { FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_theme); } else if (f == FileCategory.Apk) { FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_apk); } else if (f == FileCategory.Zip) { FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_zip); } else if (f == FileCategory.Doc) { FileManagerTabActivity.bar.getSelectedTab().setText(R.string.category_document); } } }
@Override public boolean onBack() { if (isHomePage() || curViewPage == ViewPage.NoSD || mFileViewInteractionHub == null) { return false; } return mFileViewInteractionHub.onBackPressed1(); }
@Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { if (curViewPage != ViewPage.Category && curViewPage != ViewPage.Favorite) { // 不在文件列表和收藏界面 则不进行菜单操作 return; } mFileViewInteractionHub.onCreateOptionsMenu(menu); // menu 选项菜单 // mFileManagerOperationActivity.onCreateOptionsMenu(menu); }
@Override public View onCreateView( LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mActivity = getActivity(); /*mFileViewActivity = (FileViewActivity) ((FileManagerTabActivity) mActivity) .getFragment(Util.SDCARD_TAB_INDEX);*/ mRootView = inflater.inflate(R.layout.mlt_file_manager_category, container, false); // 加载布局界面 curViewPage = ViewPage.Invalid; mFileViewInteractionHub = new FileViewInteractionHub(this); mFileViewInteractionHub.setMode(Mode.View); mFileViewInteractionHub.setRootPath("/"); mFileIconHelper = new FileIconHelper(mActivity); mFavoriteList = new FavoriteList( mActivity, (ListView) mRootView.findViewById(R.id.favorite_list), this, mFileIconHelper); mFavoriteList.initList(); mAdapter = new FileListCursorAdapter(mActivity, null, mFileViewInteractionHub, mFileIconHelper); // chb add begin mPhoneCardLayout = (LinearLayout) mRootView.findViewById(R.id.phone_linearlayout); mPhoneCardLayout.setOnClickListener(mOnClickLististener); mFtpViewLayout = (LinearLayout) mRootView.findViewById(R.id.ftp_list); mFtpViewLayout.setOnClickListener(mOnClickLististener); // chb add end ListView fileListView = (ListView) mRootView.findViewById(R.id.file_path_list); // 文件列表 fileListView.setAdapter(mAdapter); setupClick(); setupCategoryInfo(); updateUI(); registerScannerReceiver(); // 注册广播过滤器 return mRootView; }
@Override public boolean onOperation(int id) { mFileViewInteractionHub.addContextMenuSelectedItem(); switch (id) { case R.id.button_operation_copy: // bar 复制 case GlobalConsts.MENU_COPY: copyFileInFileView(mFileViewInteractionHub.getSelectedFileList()); mFileViewInteractionHub.clearSelection(); break; case R.id.button_operation_move: case GlobalConsts.MENU_MOVE: // bar 粘贴 startMoveToFileView(mFileViewInteractionHub.getSelectedFileList()); mFileViewInteractionHub.clearSelection(); break; case GlobalConsts.OPERATION_UP_LEVEL: // 返回上一级目录 (Home) setHasOptionsMenu(false); showPage(ViewPage.Home); break; default: return false; } return true; }
/** * @MethodName: updateUI @Functions:更新页面布局内容 * * @return :void */ public void updateUI() { boolean sdCardReady = Util.isSDCardReady(); if (sdCardReady) { // 如果SD卡存在 if (preViewPage != ViewPage.Invalid) { showPage(preViewPage); preViewPage = ViewPage.Invalid; } else if (curViewPage == ViewPage.Invalid || curViewPage == ViewPage.NoSD) { showPage(ViewPage.Home); } refreshCategoryInfo(); // refresh file list mFileViewInteractionHub.refreshFileList(); // refresh file list view in another tab // mFileViewActivity.refresh(); } else { // sd 卡不存在 preViewPage = curViewPage; showPage(ViewPage.NoSD); } }
private void refreshList() { mFileViewInteractionHub.refreshFileList(); }
@Override public void onPrepareOptionsMenu(Menu menu) { if (!isHomePage() && mFileCagetoryHelper.getCurCategory() != FileCategory.Favorite) { mFileViewInteractionHub.onPrepareOptionsMenu(menu); } }