- 博客(14)
- 资源 (7)
- 收藏
- 关注
原创 Android开发模式之-观察者模式
1.新建一个被观察者,这里可以被多个观察者观察class Person extends Observables下面的跟新建一个实体类差不多,只不过在set/get方法中的set添加方法setChanged()setChanged()方法设置改变了notifyObservers()方法通知观察者我改变了,并且会调用update()方法 2.新建一个观察者,这里可以建多
2017-06-27 22:08:00 225
原创 沉浸式状态栏
添加如下代码就能实现简单的沉浸式状态栏了.需要注意的是,只能实现5.0系统以上的,5.0以下就不是这么简单了,这里只是当5.0以下时,为全屏效果if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.KITKAT){//透明状态栏 getWindow().addFlags(WindowManager.LayoutParams.F
2017-06-27 22:04:11 252
原创 解决RecyclerView代码复用问题
方法一. holder.setIsRecyclable(false);//取消复用,但会造成卡顿方法二.在Adapter下(就是添加一个标记集合,当是否点击,如果是就添加到这个集合中,否就移除,再判断一次当前是否在这个集合中,是就显示点击的状态,否就显示未点击状态)privateList Livelist=new ArrayList onBindViewHolder下playv
2017-06-27 22:00:14 11929
原创 Android记一次语音播报功能开发
首先先下载科大讯飞语音引擎包3.0http://mydata-1252536312.cosgz.myqcloud.com/rhymekdxf3.0.apk这个是我在腾讯对象存储的一个地址,可以下载下来然后安装转到手机的设置-辅助功能-tts设置成科大讯飞的语音引擎.添加如下代码: private TextToSpeech tts;onCreate:
2017-06-27 21:59:00 1228
原创 AndroidSQLite之记一次有就更新,没就插入
SQLiteDatabase db=getInstent(context);//初始化DB db.beginTransaction(); for (Parent parent:parents){ db.execSQL("replace into "+Par_Table+"("+ Par_Id+"
2017-06-27 21:57:31 1098
原创 获取原图宽高
BitmapFactory.Options bfo=newBitmapFactory.Options(); bfo.inJustDecodeBounds= true;//bitmap不存在内存中 bitmap =BitmapFactory.decodeFile("图片地址",bfo ); in
2017-06-27 18:23:31 301
原创 获取所有已安装的应用
1.获取packagemanager PackageManager manager =getContext().getPackageManager();2.获取已安装的应用 List packageInfos =manager.getInstalledPackages(0);3.遍历packageinfo列表,获取详情ApplicationInfoa
2017-06-27 18:22:06 606
原创 Fragment切换
private void switchFragment(Fragment from, Fragment to) { if (from == null && to == null){ return; } FragmentTransaction fragmentTransaction= fragManager.beg
2017-06-27 18:21:07 205
原创 Android studio更新到2.3后一直building
更新完2.3版本后,第一次新建一个项目,会出现一直building中原因是在下载gradle对应的版本,我们可以事先下载好对应所需的版本:把这个压缩包直接放在C:\Users\用户名\.gradle\wrapper\dists\gradle-3.3-all\55gk2rcmfc6p2dg9u9ohc3hw9这个下面,重新启动一下as,就大功告成了哈!
2017-06-27 18:19:43 221
原创 Handler&HandlerThread&Thread&AsyncTask详解
Handler防止内存泄漏:1.声明弱引用:static classmyHandler extends Handler { WeakReferencemActivityReference; myHandler(Activity activity) { mActivityReference= newWeakReference(activity);
2017-06-27 18:17:06 252
原创 Android开源数据库框架之LitePal
简介:郭大神对SQLite操作的封装,十分好用1.添加依赖包:compile'org.litepal.android:core:1.3.2' 2.New一个Directory为assets目录新建一个litepal.xml文件添加如下内容: 3.配置LitepalAp
2017-06-27 18:08:42 329
原创 解决使用NestedScrollView嵌套RecyclerView滑动不流畅
解决使用NestedScrollView嵌套RecyclerView滑动不流畅LinearLayoutManager layoutManager = new LinearLayoutManager(this);layoutManager.setSmoothScrollbarEnabled(true);layoutManager.setAutoMeasureEnabled(true)
2017-06-27 18:07:13 2182
原创 Intent传递List<object>方法
首先让你的object实现Serializable接口然后在传递时强制转换为Serializable类型:传递时类似intent.putExtra("address",(Serializable) movicelist.getMulu());这样其中movicelist.getMulu()得到的是一个List类型的list获取时 List mulus = (List)
2017-06-27 18:00:45 262
原创 单个dex文件不能超过65535个方法解决方法
1.原因:谷歌规定单个dex文件中的方法不能超过65536限制2.处理:1.分包处理2.使用谷歌推荐的multidex@在app下的build.grade下添加依赖compile 'com.android.support:multidex:1.0.1'@确保编译版本大于21.1@在app下build.grade里的defaultConfig添加multi
2017-06-06 09:31:22 1201 2
Android Studio的Flutter插件
2018-05-18
proguard(5.3.2-5.3.3)
2018-01-08
Sqlite数据库修复工具RepairUR
2017-12-05
Android二级缓存
2017-10-09
HttpURLConnection
2017-09-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人