
Android Study
设计失
人只有学习他人,和自己比才能更加强大!
展开
-
Android杂谈-RelativeLayout中的baseline是什么?
中文翻译是基准线的意思,看似简单又有些不好理解,其实这个baseline相当于笔记本里写文字时候的底下的那条线,在RelativeLayout中baseline举例:比如,加入两个相邻的TextView,给第二个TextView一个大一点的padding(比如20dp),如果加了layout_alignBaseline到第二个TextView中的话,TextView中的文字"world"会转载 2014-12-28 10:36:51 · 409 阅读 · 0 评论 -
Android性能优化——APP启动速度优化
一、查看启动时间 第一种方式:直接在Logcat中查看,Android应用启动的时候会打印出app的启动时间,不过要在过滤框中输入 Displayed 来过滤查看: 第二种方式: 使用 adb 命令,这里不详解 adb,有疑问的可以自行谷歌二、优化启动时间 怎么优化?我们都知道APP的启动是靠系统进程来调用ActivityThread中...原创 2018-07-25 11:18:43 · 1092 阅读 · 0 评论 -
Ubuntu 连接错误 Connection closed by foreign host
1、出现突然连接不上并报Connection closed by foreign host2、网上查了一下是ssh服务问题,也有可能是远程服务器端出现问题 所以可以重启一下远程服务器3、重启ssh服务: cd /etc/ssh sudo chmod 644 ./* sudo chmod 600 ssh_host_dsa_k原创 2017-11-14 09:54:54 · 4030 阅读 · 0 评论 -
设计模式 -- 原型模式
原型模式使用场景: 1. 类初始化消耗非常多资源 2. new一个对象需要非常繁琐的数据准备或访问权限 3. 一个对象需要给其他对象访问,每个调用者都需要修改其值时 简单实现/** * Created by Ellison * @date 2017/11/9 * @desc 用一句话描述这个类的作用 */class WordDocument : Cloneable {原创 2017-11-09 22:50:21 · 178 阅读 · 0 评论 -
MySQL安装与配置 (绿色版不能安装的情况)
MySQL安装与配置是一件很简单的事情,但是在下载安装的时候会出现一些问题,比如我电脑的权限配置一直存在问题,所以在使用mysqld.exe这个文件的时候会启动不了服务。 下面我将下载开始安装与配置MySQL:原创 2017-10-31 16:08:31 · 334 阅读 · 0 评论 -
Android Appcompat样式使用自定义Dialog
自定义Dialog在项目中使用到很多,其中遇到的坑也很多,来看下使用Appcompat样式的dialog怎么处理:1、使用样式文件<style name="PhotoDialog" parent="@style/Theme.AppCompat.Light.Dialog.Alert"> <!--是否去除标题 --> <item name="windowNoTitle">原创 2017-03-29 09:42:24 · 5898 阅读 · 1 评论 -
Android Studio 中的Logcat使用MD效果
首先来张图看着还好,有点眼花,当然你也可以设置自己喜欢的颜色,具体步骤如下:打开AS中的setting,在搜索设置下面搜索Android logcat: 可以看到,这是修改之后的,再来一张没有修改的: 注意右边的 Use inherited attributes, 没有修改的是打上勾的,如果你想要设置自己想要的颜色,首先得保存一份自己的 “主题” Darcula Copy 或者 Defau原创 2017-03-18 11:01:08 · 302 阅读 · 0 评论 -
安卓studio添加依赖的六种模式
Compile compile是对所有的build type以及favlors都会参与编译并且打包到最终的apk文件中。Provided Provided是对所有的build type以及favlors只在编译时使用,类似eclipse中的external-libs,只参与编译,不打包到最终apk。APK 只会打包到apk文件中,而不参与编译,所以不能再代码中直接调用jar中的类或方法,否则在编译时原创 2016-08-02 09:38:22 · 365 阅读 · 0 评论 -
安卓Studio修改包名
1、将包名的默认显示方式去掉,将compact empty middle packages 的勾去掉 2、按shift+F6重命名包名3、在该app下修改build.gradle中的applicationId为自己的修改后的包名 4、在清单文件中修改activity中的包名:原创 2016-08-04 10:29:41 · 413 阅读 · 0 评论 -
ViewPager的基本使用
ViewPager是android扩展包v4包中的类,这个类可以让用户左右切换当前的view。我们首先来看看API对于这个类的表述:?123Layout manager that allows the user to flip left and right through pages of data. You supp转载 2016-01-26 20:03:21 · 276 阅读 · 0 评论 -
如何让Android自适应不同分辨率或不同屏幕大小的layout布局
一:不同的layout Android手机屏幕大小不一,有480x320, 640x360, 800x480.怎样才能让App自动适应不同的屏幕呢? 其实很简单,只需要在res目录下创建不同的layout文件夹,比如layout-640x360,layout-800x480,所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用转载 2016-01-25 21:26:11 · 2353 阅读 · 0 评论 -
Android的文本和输入---拼写检查器
Android平台提供能够让你在应用程序中执行和访问拼写检查的拼写检查器框架。这个框架是由Android平台提供的文本服务API之一。 要在应用程序中使用该框架,你就要创建一个特殊的Android服务类型,该服务会生成一个拼写检查器的session对象。基于你提供的文本,该session对象会返回由拼写检查器生成的拼写建议。 拼写检查器的生命周期 下转载 2016-01-25 20:38:05 · 844 阅读 · 0 评论 -
AsyncTask中各个函数详细的调用过程,初步实现异步任务
原文地址AsyncTask内部类可能会产生内存泄露的问题解决上述内部类可能引起的内存泄露问题的方法•将AsyncTask或者Thread的子类作为单独的类文件,不持有Activity的强引用•将AsyncTask或者Thread的子类使用static修饰,则不会隐式持有Activity的强引用•如果是匿名内部类,则需要将其对象设置成成员属性,使用static修饰就不会隐式持有转载 2016-01-25 18:28:06 · 516 阅读 · 0 评论 -
创建notification的方法
说明:根据项目选择的基础sdk,选择不同的创建Notification的方法1 在android sdk 3.0 之前直接通过 new Notification的方法直接创建通知对象2 在android sdk 3.0 是通过Notification.Builer的方法间接配置Notification的属性和创建Notification的功能3 在android sdk4.转载 2015-03-20 12:04:21 · 639 阅读 · 0 评论 -
浅谈 设计模式之 —— 责任链模式 (OKHttp中的责任链模式)
一、 什么是责任链模式 责任链, 顾名思义是将多个节点通过链条的方式连接起来,每一个节点相当于一个对象,而每一个对象层层相关,直接或者间接引用下一个对象(节点);直到链条中有一个节点处理头节点传下来的事件截止。二、责任链模式使用场景 (以下摘自 Android源码设计模式) 有一事件,可以被多个对象同时处理,但是由哪个对象处理则在运行时动态决定! 在请求处理者不明确...原创 2018-08-09 16:46:22 · 1598 阅读 · 0 评论