从本篇开始,讲解net.micode.fileexplorer.util工具包中的类。
这个包下的类,功能也比较单一和独立。很多代码的思想和实现,可以用于JavaWeb和Android等多种环境中。

一、单实例活动管理器ActivitiesManager
一个单实例的活动管理器,从方法的被调用程度来看,“徒有其名”。
registerActivity注册活动方法被使用了,而getActivity没有被使用,感觉明显有问题啊~
我目前的猜测:
大概是查看文件的时候,就会新建立一个活动,并且注册保存起来。
然后在需要的时候,使用getActivity获得,再做后续处理。
但是,getActivity方法压根没有被使用。

我猜测:“社区开源版”是被阉割了,代码是经过裁剪的?

package net.micode.fileexplorer.util;

import java.util.HashMap;

import android.app.Activity;
/**单实例活动管理器*/
public class ActivitiesManager {
public static final String ACTIVITY_FILE_VIEW = "FileView";
//@Deprecated没有被任何其他类使用
public static final String ACTIVITY_FILE_CATEGORY = "FileCategory";
//@Deprecated没有被任何其他类使用
public static final String ACTIVITY_TAB = "FileExplorerTab"; private static ActivitiesManager instance; private HashMap<String, Activity> activities = new HashMap<String, Activity>(); private ActivitiesManager() {
} // return true indicates successful, false indicates the name exists
//根本没有返回值,难道说“社区开源版”是被阉割的么?
//被FileViewActivity使用了,大概是查看文件的时候,就会新建立一个活动
public void registerActivity(String name, Activity a) {
activities.put(name, a);
} //@Deprecated没有被任何其他类使用
public Activity getActivity(String name) {
return activities.get(name);
} public static ActivitiesManager getInstance() {
if (instance == null)
instance = new ActivitiesManager();
return instance;
}
}

二、单实例设置工具类Settings
就1个作用,保存和查看“是否显示隐藏文件和上级目录”。
难道这个程序的设置或者说“首选项”太少了。

package net.micode.fileexplorer.util;
/**单实例设置工具类,保存1个选项,是否显示隐藏文件和上级目录“.”*/
public class Settings {
// whether show system and cache images, default not
private boolean mShowDotAndHiddenFiles;
private static Settings mInstance; private Settings() { } public static Settings instance() {
if(mInstance == null) {
mInstance = new Settings();
}
return mInstance;
} public boolean getShowDotAndHiddenFiles() {
return mShowDotAndHiddenFiles;
} public void setShowDotAndHiddenFiles(boolean s) {
mShowDotAndHiddenFiles = s;
}
}

三、关于单实例
   一个类,只建立一个实例。
   目前这2个类,都不是线程安全的。

最新文章

  1. 学习AOP之认识一下Spring AOP
  2. A()方法
  3. Third Day:正式编程第三天,学习实践内容TextView跑马灯、AutoCompleteTextView、multiAutoCompleteTextView以及ToggleButton、checkedBox、RadioButton等相关实践
  4. Spring urlMapping
  5. 2014年最大福利:185个Google排名因素!免费电子书下载
  6. 使用main方法调用http请求本地服务器的某个servlet报错问题
  7. CodeForces 451C Predict Outcome of the Game
  8. C#实现IDispose模式
  9. as3 工具类分享 CookieMgr
  10. PAT 团体程序设计天梯赛-练习集 L2-003. 月饼
  11. windows 系统注册dll文件
  12. Laravel 5.2 教程 - 迁移
  13. [2015-11-10]iis远程发布配置
  14. 用anaconda安装最新的TensorFlow版本
  15. CRM 数据查重
  16. Angular service定义服务
  17. spark 指定相关的参数配置 num-executor executor-memory executor-cores
  18. Spring Boot - StateMachine状态机
  19. 给 TextBlock 加 ToolTip
  20. MVC下的DAO接口类和SERVICE接口类区别?

热门文章

  1. BZOJ 3674: 可持久化并查集模板
  2. Centos安装masscan
  3. iOS 全局修改UINavigation 后退按钮
  4. 查看mysql正在执行的SQL语句,使用profile分析SQL执行状态
  5. 二 JDK + mysql + yum + rpm
  6. ArcGIS api for javascript——放大时切换图层
  7. ReactNative之Flux框架的使用
  8. vue2.0 vue-loader
  9. Redis的安装与启动(doc和本地客户端)
  10. jasperreport 追加新报表(2)