android开发巩固java基础notifywait的妙用javaandroid测试以及翻出我之前2015年的有道云笔记供大家参考
简书链接:android开发巩固java基础notifywait的妙用javaandroid测试以及翻出我之前2015年的有道云笔记供大家参考文章字数:950,阅读全文大约需要3分钟经常玩 测试类的都应该知道,android测试测试子线程的时候往往直接结束了,并没有看到日志打印,难道真的没法测试了吗? 其实不然,java的notify 和wait就可以派上用场啦!在android test快结束的时候 synchronized锁进行等待即可. 有时候java基础还是很重要的啦,当然咯,很久没玩java 线程同步,可能全还给老师也是可以理解的. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354package cn.qssq666.videotest;/** * Created by qssq on 2018/4/20 qssq666@foxmail.com */public class WaitTest { ...
为什么fragmentnew出来之后只推荐使用setArguments传递数据在不想使用序列化的时候如何解决
简书链接:为什么fragmentnew出来之后只推荐使用setArguments传递数据在不想使用序列化的时候如何解决文章字数:242,阅读全文大约需要1分钟为什么fragment new出来之后只推荐使用getArguments()获取数据在不想使用序列化的时候如何解决 12345678TabVideoFragment tab1VideoFragment = TabVideoFragment.class.newInstance(); tab1VideoFragment.setDefaultStoreList(list);//当内存中有一个的时候无效 Bundle bundle=new Bundle(); //Cns.INTENT_BOOLEAN bundle.putBoolean(Cns.INTENT_BOOLEAN,true); bundle.putBoolean(Cns.INTENT_NEED_FROM_ACTIVITY_FETCH_DATA,list!=null); ...
原创windowgitchannelfailedtoreceivehandshakeSSLTLSconnection
简书链接:原创windowgitchannelfailedtoreceivehandshakeSSLTLSconnection文章字数:407,阅读全文大约需要1分钟 12345678git.exe push --progress "origin" masterfatal: unable to access 'https://github.com/qssq/DBUtilX.git/': schannel: failed to receive handshake, SSL/TLS connection...
androidfitsSystemWindowstrue只在第一次切换fragment生效对策
简书链接:androidfitsSystemWindowstrue只在第一次切换fragment生效对策文章字数:57,阅读全文大约需要1分钟这个问题导致我不能单独给某个fragment可以沉浸画到顶部,让某些页面则不沉浸化到顶部。。 解决方法估计只能在每一个fragment测量状态栏高度了。
高仿腾讯微视首页点击直播tab视频沉浸顶部和tab选项卡,点其他界面恢复正常
简书链接:高仿腾讯微视首页点击直播tab视频沉浸顶部和tab选项卡,点其他界面恢复正常文章字数:358,阅读全文大约需要1分钟 难点1:让视频view延伸到底部tab,顶部状态栏难点2:让其他fragment view顶部状态栏自动fitWindow针对性的让部分延伸到顶部 解决方法:我使用相对布局,然后让fragment space区域ABOVE 底部区域 然后取消activity的view的fitWindow属性。然后每一个fragment单独计算fitWindow的高度,也就是测量状态栏高度,给自己的不需要填充状态栏的fragment view设置一个状态栏高度view弄进去产生视觉错感。在切换到直播fragment的时候移除ABOVE自动填充底部,修改底部导航背景为透明, 123456789101112131415161718192021222324252627282930313233private void switchPosition(int index) { if (index == mLastPosition) { ...
android列表视频播放的研究以及架构封装自己的播放器
简书链接:android列表视频播放的研究以及架构封装自己的播放器文章字数:66,阅读全文大约需要1分钟 实现列表滑动自动播放实现列表翻页实现列表自动播放暂停实现进度条显示实现缓冲进度的显示 1com.volokh.danylo.video_player_manager.ui; 首先观察第三方的源码目前这个比较好做 源码地址http://github.com/qssq/videoplayerx
被产品经理虐的android要给所有activity加上ios11大标题加滚动滑动然后一个月之后又要取消是什么体验?那么我之前是如何处理的?
简书链接:被产品经理虐的android要给所有activity加上ios11大标题加滚动滑动然后一个月之后又要取消是什么体验?那么我之前是如何处理的?文章字数:802,阅读全文大约需要3分钟被产品经理虐的android要给所有activity加上ios11大标题加滚动滑动变成小标题。ios说很简单,我特么估计就一个属性吧。 这么多界面,很多底部权重界面都需要单独处理的,我虽然也是用代码控制继承,但是还是有点反感变态的需求我虽然写的很好,不是重写所有xml布局,而是通过继承 ,实现了快速解决所有问题。...
androiddatabind双向绑定爽不爽能干什么看看这个就明白了`
简书链接:[androiddatabind双向绑定爽不爽能干什么看看这个就明白了`](https://www.jianshu.com/p/dc1656557929)文章字数:438,阅读全文大约需要1分钟双向绑定在公司应用开发中很少用到,就用户名可以用用双向绑定吧,双向绑定不需要在模型里面填写notifyFielChange()以及继承BaseObserveable```还是非常方便的,那么我用来做什么了呢? 每次加功能新增任何一个配置,我不需要findbyid,我不需要修改java代码我只需要填写一个控件然后只需要这样app:text="@={model.videogagminute}" 注意,这里我用了一个=就这么简单,哈哈哈,qq机器人用这个简直绝配!!! android databind来做配置修改啊,另外我的数据库自动升级util也是架构的非常好,不需要写什么升级语句浪费时间. 123456789<EditText...
android逆向分析腾讯微视研究无限循环视频嵌套滑动不中断的实现方式
简书链接:android逆向分析腾讯微视研究无限循环视频嵌套滑动不中断的实现方式文章字数:2207,阅读全文大约需要8分钟我这里寻找突破口是寻找适配器文字追踪,因为这布局文件太多了,通过点击方式追踪没有追踪到具体的东西。 其实根据触摸找到了 触摸布局 【触摸事件触发】:View id:2131690704 123456最后找到了开源库https://github.com/lsjwzh得出结论,感觉还是团队开发很重要,其实有些东西就是第三方的,就是你知不知道的问题。得到了开源库,剩下的都好办了,哈哈 package com.tencent.oscar.module.feedlist.c; import NS_KING_INTERFACE.stGetFeedCommentListRsp;import NS_KING_INTERFACE.stPostCommentReplyRsp;import NS_KING_INTERFACE.stPostFeedCommentRsp;import NS_KING_INTERFACE.stPostFeedDingRsp;import...
andorid对话框边界的处理美化
简书链接:andorid对话框边界的处理美化文章字数:92,阅读全文大约需要1分钟 解决方法: 123456789101112131415161718192021 android:lineSpacingExtra="8dp" android:text="@string/loading" android:textColor="#5E5E5E" android:layout_marginBottom="15dp" android:textSize="14sp" app:htmltext="@{model.contentand}" /> </LinearLayout></android.support.v4.widget.NestedScrollView><View ...