积累
哗啦啦马踏联营
不断提高技术水平.
展开
-
自己封装的一个工具类
/**工具类:包含两个方法.1.dip到px的转换;2.让代码运行到主进程的方法;3.获取随机颜色的值的方法;4.获取一个带背景颜色的圆角矩形的方法; * 5.设置背景选择器的方法;6.生成随机的不重复的id值的方法;7.通过资源id获取资源图片的方法;8.判断是否是主线程的方法;*/public class UIUtil {/**像素转换: * @param dip 要转换的di原创 2016-06-15 16:49:18 · 497 阅读 · 0 评论 -
Kotlin写界面时诸多控件的点击事件
界面中控件较多的话,每个控件都设置setOnClickListener(this)是很麻烦的,为此抽出了一个Context的扩展类:fun Context.setViewClick(listener:原创 2017-08-01 10:24:27 · 2506 阅读 · 0 评论 -
Android Studio升级到2.3.3之后的打包问题
前段时间开始使用Kotlin的时候,将Android Studio升级到了2.3.3。嗯,没毛病。 然后今天打包时发现了问题原创 2017-08-01 15:16:25 · 709 阅读 · 0 评论 -
使用状态栏
因为各种原因需要使用状态栏,调整状态栏背景颜色、文字颜色时,获取到一个工具类StatusBarUtil原创 2017-08-08 16:16:36 · 297 阅读 · 0 评论 -
Java与Kotlin混合开发中的问题
**Kotlin成为了Android的官方语言于是后知后觉的开始在项目中引入kotlin,但是只知其优点,不知其详细则不可,于是加班加点的系统地学习了一下Kotlin之后,开始了项目的kotlin开发。在项目中进行开发的时候,因为之前是java开发的,虽然Android Studio已经提供了java代码转Kotlin代码的一键转换功能,但是貌似对自己、对项目都不负责。于是开始了项目的混编,中间遇到原创 2017-07-27 11:57:10 · 5233 阅读 · 0 评论 -
仿糯米首页菜单左右滑动效果
水平滑动控件用RecyclerView,水平滚动到指定位置用其smoothScrollToPosition(position)方法。但是这个缓慢滑动的速度有些快,想要变慢一些是没有原生方法的。 从smoothScrollToPosition的源代码中知道,滚动效果其实是调用了LayoutManager的smoothScrollToPosition(RecyclerView recyclerView原创 2017-08-02 14:02:09 · 551 阅读 · 0 评论 -
仿淘宝滚动新闻
最近项目中有滚动新闻的需求,和淘宝、京东热点那一样的,于是自己写了一个自定义控件(根据控件高度计算Y值不断绘制Textview),本来挺完美的。各种封装、调用,但版本发布后被各种反馈淹没(机型适配)。有的机型只重复显示一跳信息,有的带“探戈” 效果的显示。T_T 坑,百般修复都不能满足各种机型...原创 2017-07-25 18:28:03 · 347 阅读 · 0 评论 -
用Kotlin写android点击事件
一、写点击事件的2种方式1.全局实现接口方式:a.全局实现View.OnCLickListener后:b.btn_secacti_first.setOnClickListener(this) btn_secacti_second.setOnClickListener(this)c.override fun onClick(v: View) { val id = v.id when原创 2017-07-25 18:39:12 · 7516 阅读 · 2 评论 -
集成支付宝支付的坑
项目发展到了收费阶段,需要接入各种支付...以前就做过支付宝的集成,但这次集成的时候出问题了----引入包冲突各种检查,最后症结所在------项目在早期做推送的时候接入了阿里推送,此次集成支付宝支付时 alipaySdk-***.jar中com目录下的ta、ut这两个目录下的文件与阿里推送中文件冲突,果断删除这2个文件夹,然后ok原创 2017-08-17 15:01:33 · 298 阅读 · 0 评论 -
adapter基类的封装
分享一下项目中封装、使用比较成熟的适配器基类AdapterBaseViewHolder原创 2017-08-26 14:03:32 · 338 阅读 · 0 评论 -
PopupWindow在7.0上显示的坑
下面是项目中封装的一个展示筛选框的popupWindow类,public class FilterDialogView extends PopupWindow { // 当前选中位置 private int mSelectIndex = 0; private Context mContext; private boolean mNeedPressed = false;原创 2017-10-20 16:51:56 · 270 阅读 · 0 评论 -
Realm使用中遇到的一个问题
项目中数据库使用的是realm,在做搜索历史记录的时候,产品需求是点击历史记录中的文字进行快搜时,将点击的那一条记录置为最顶部显示。我的操作是,每搜索一次都添加一个搜索历史记录,但添加的时候要先查询数据库看看是否数据库中已经有了待添加的这个数据:如果没有则直接添加;如果有就删除那条旧数据然后再添加这条数据。结果发现每次点击历史记录中的条目进行快搜后,原来最顶端显示的记录都会与被点击的条目的原显示位...原创 2018-03-13 13:58:47 · 507 阅读 · 0 评论 -
用Kotlin写android点击事件
一、写点击事件的2种方式1.全局实现接口方式: a.全局实现View.OnCLickListener后: b.btn_secacti_first.setOnClickListener(this) btn_secacti_second.setOnClickListener(this) c. override fun onClick(v: V原创 2017-07-10 17:43:17 · 2779 阅读 · 0 评论 -
Kotlin学习(一)
一、Android studio中Kotlin的使用参考链接:http://blog.csdn.net/gemgaozhen/article/details/69946525二、Kotlin使用分析 参考链接:http://blog.csdn.net/androidyue/article/details/72457157 1.变量的声明:原创 2017-07-10 16:38:53 · 218 阅读 · 0 评论 -
平时的一些总结--ing
一:自定义一个Dialog,并且点击空白处可以取消的步骤:1.编写一个自定义的LocationDialog的布局文件,R.layout.view_dialog;2.自定义LocationDialog类,继承extends Dialog;3.在onCreate()方法中加载并显示布局文件setContentView(R.layout.view_dialog);4.设定点击窗口空白处取原创 2016-05-28 22:18:28 · 444 阅读 · 0 评论 -
一些总结(二)
十九.动态的设置Fragment //1.获取一个FragmentManager对象 FragmentManager fragmentManager = this.getFragmentManager(); //2.使用manager对象开启事务,获取一个FragmentTransaction 对象 FragmentTransaction fragmentTr原创 2016-06-12 22:35:00 · 387 阅读 · 0 评论 -
自己封装的一个工具类
工具类包含的方法: 1.dip到px的转换; 2.2.让代码运行到主进程的方法; 3.3.获取随机颜色的值的方法; 4.4.获取一个带背景颜色的圆角矩形的方法; 5.设置背景选择器的方法; 6.6.生成随机的不重复的id值的方法; 7.7.通过资源id获取资源图片的方法; 8.8.判断是否是主线程的方法;public class UIUtil {原创 2016-11-16 11:30:08 · 1757 阅读 · 0 评论 -
坑:删除ViewGroup中的一个已经得到焦点的EditText时,同级的第一个EditView会得到焦点
最新公司项目中有一个需求:点击一个按钮生成一个含有EditText的自定义控件item,然后点击item中的X时删除该item;点击item中的EditText时可以对其中的内容进行编辑,如果编辑内容过程中清除内容时会自动删除该item,item外层是LinearLayout。 开发过程中发现,如果编辑内容过程中清除内容导致自动删除item时,该LinearLayout内的第一个i原创 2017-01-13 17:13:49 · 335 阅读 · 0 评论 -
listview设置了间隔线,顶部不显示时的处理
ViewStub viewStub = new ViewStub(this);lvList.addHeaderView(viewStub);原创 2017-01-13 17:23:27 · 400 阅读 · 0 评论 -
float保留两位小数
用DecimalFormat 返回的是String格式的.float num = 0.012312123;DecimalFormat mFormat = new DecimalFormat(“.00”);String formatNum = mFormat .format(num );formatNum的值为“0.01”.原创 2017-03-02 14:51:33 · 5856 阅读 · 0 评论 -
android studio编译报错finished with non-zero exit value 3
项目最近正在嵌入腾讯云通信IM,集成成apk达到50M,最后正式打包签出的时候报错Process 'command 'C:\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 3...;折腾了老一顿,最后获知是方法数达65535的原因。 最后的解决方案是:在build.grade(app)中添加如下一行原创 2017-04-20 15:13:08 · 336 阅读 · 0 评论 -
项目中集成聊天功能所过的坑
在项目中集成聊天功能时,集成了腾讯云通信模块,在集成过程中发现了诸多问题,填了好多的坑。谨此记录,共享:1.我们创建的群聊均是Public公开群,SDK中提供的方法有群主邀请人入群的方法,但是在运行时始终获取不到结果,最后提了个工单(事经良久)获知该功能暂不支持(自己想办法实现--前后端配合);2.所有需要需要通过自定义字段获取的数据,均需要在登录之前进行初始化,否则无法获取(深坑,虽原创 2017-04-20 15:32:51 · 427 阅读 · 0 评论 -
TextView设置指定位置处文字颜色的坑
项目需求:匹配一定的规则后给一个Textview上的文本设置不同的颜色。int txtLength = mContentTxt.length();SpannableStringBuilder stringBuilder = new SpannableStringBuilder(mContentTxt);for (int i = 0; i mMatchIndex.size(); i++)原创 2017-05-03 11:54:26 · 347 阅读 · 0 评论 -
水印背景初试
项目中出于各种目的需要在敏感部位添加水印,最近写了一个水印,主要用到的是Canvas中的方法即可实现。下面贴出部分代码,以供参考: private void initView() { String firstTxt = getResources().getString(R.string.app_name); Bitmap bitmap = Bitmap.create原创 2017-05-11 18:03:05 · 273 阅读 · 0 评论 -
Random使用的坑
最近在使用随机数的时候遇到了一种情况:根据获取到的音量大小来获取范围内的随机数; 创建Random对象:Random random = new Random(); 创建对随机数:int temp = random.nextInt(n); 结果经常会接收到IllegalArgumentException异常,然后我项目中使用了RxJava,异常一直无法定位,只有信原创 2017-05-09 13:44:15 · 598 阅读 · 0 评论 -
android studio上找不到已经启动的夜神模拟器的处理办法
方法:找到夜神模拟器的安装目录中的bin目录下,运行cmd输入nox_adb.exe connect 127.0.0.1:62001 即可。因为这种事情的偶发几率很大,所以每次执行上面的方法有点麻烦,get了一个新姿势,将上述步骤写到bat文件中:1.创建一个txt文件,在文件中写上cmd中的进入夜神binml的命令;再另起一行写nox_adb.exe connect 127.0.原创 2018-04-20 09:53:40 · 4390 阅读 · 0 评论