使用 tools 命名空间实现 View 的预览
使用 tools 命名空间实现 View 的预览
在开发过程中,有时候需要对 View 进行预览,以前需要把 application run 到手机或者是模拟器上后才能看到效果,现在,我们有了更加方便快捷的方法。
使用 tools 命名空间实现 View 的预览
在开发过程中,有时候需要对 View 进行预览,以前需要把 application run 到手机或者是模拟器上后才能看到效果,现在,我们有了更加方便快捷的方法。
在项目中遇到项目要求在描述中进行两端对齐,而我们的 TextView
是不支持两端对齐的
要做到两端对齐,其实还是有些小 trick 的
在项目的开发中,业务模块越来越多,代码量越来越多,编译构建的时间也越来越长,尝试将项目进行组件化开发。
所谓组件化,就是将各个业务模块解耦,在开发的时候将每个业务模块当做单独的 application 开发,在开发完毕后打包成 aar 或者以 module 的形式依赖到主 application 中。
首先,我们将将请求api封装成一个接口(interface
), Retrofit 通过这个定义的interface
生成一个具体的实现。
在interface
中进行接口api的定义,比如
1 | public interface RepoService { |
所谓 沉浸式状态栏 和 变色状态栏 之分
按照文档,沉浸式指的是在一些阅读应用或者视频播放应用中进行全屏,隐藏 StatusBar
和 NavigationBar
并在手指触摸手机顶部或者底部时可以唤出这两者的行为
##HttpClient (Apache)
6.0中已经移除了这个方法,Google建议使用HttpUrlConnection 见Android 6.0 Changes
记录一下 CollapsingToolbarLayout 的使用
##一些 AsyncTask 的知识
AsyncTask<Params,Progress,Results>是一个抽象类,通常用于被继承需要指定三个参数
1 | Params: 启动任务时输入参数的类型 |
必须重写 doInBackground() 方法 这是异步执行后台线程任务将要完成的任务 在这里操作耗时操作
onPreExecute() 执行后台耗时操作前被调用,用来进行初始化操作
onPostExecute() 当doInBackground() 方法完成后会自动调用这个方法,并将 doInBackground() 方法中返回的值传递给该方法
onProgressUpdate() 在doInBackground() 方法中调用publishProgress() 方法更新任务的执行进度后就会调用该方法