- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 Android面试题(二)
**view的事件分发:**事件分发需要View的三个重要方法来共同完成:public boolean dispatchTouchEvent(MotionEvent event)事件分发,如果一个MotionEvent传递给了View,那么dispatchTouchEvent方法一定会被调用返回true表示事件被消费,本次的事件终止。返回值:false表示View以及子View均没有消费事件,将调用父View的onTouchEvent方法;public boolean onInterceptT
2021-11-29 18:22:02
1699
原创 Android面试题(一)
形成死锁的4个必要条件:1、互斥条件:在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,就只能等待,直至占有资源的进程用毕释放。2、占有且等待条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。3、不可抢占条件:别人已经占有了某项资源,你不能因为自己也需要该资源,就去把别人的资源抢过来。4、循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。(比如一个进程集合,A在等B,B在等C,C在等A
2021-11-26 10:44:36
1345
原创 沉浸式状态栏--让你的状态栏和主题色一样
分享一个简单粗暴的沉浸式状态栏的方法, 之前一直使用的是三方, 但是有的时候简单的要求只是需要做到状态栏和主题色一样就可以了, 所以并不需要引用三方那么麻烦; 第一步: 将状态栏和导航栏设为透明 //透明状态栏 getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);...
2018-03-01 09:52:30
2998
原创 android数据持久化技术--SharedPreferences
SharedPreferences使用的是键值对的形式来存储数据, 当保存一条数据的时候需要为这条数据提供一个对应的键. 他可以支持多种的数据类型: 字符串, 布尔类型, 整形甚至集合等等. 下边这个类就包含了多种存储的封装, 包括存储, 获取, 修改, 删除等等:public class SharedPreferencesUtils { public static final Strin
2017-12-28 15:52:41
348
原创 android数据持久化技术--文件存储
在android开发中难免会遇到将一些数据存储到本地的时候, 这篇文章就是简述其中之一的:文件存储; 文件存储是将所有的数据原封不动的保存到文件当中, 适合的是简单的文本存储. 文件存储: try { outputStream = openFileOutput("time", Context.MODE_PRIVATE);
2017-12-28 15:26:34
361
原创 android操作简单的文字标签显示
项目中出现的标签栏相信大家都很熟悉了, 比如说热门搜索; 比如历史记录;都是参差不齐的关键字.以前大家做的方式一般都是自定义控件FlowLayout.但是最近偶然看到一个布局能起到类似的效果,而且方式非常简单.在这里贴出来: 首先引入依赖: compile 'com.google.android:flexbox:0.2.3' 布局文件中引用布局:<com.google.android.flex
2017-12-01 16:33:13
2848
翻译 android播放网络或者本地视频(截取某帧做封面)VideoView原生控件
使用android原生控件VideoView播放本地或者网络视频, 实现如下: XML文件中: <VideoView android:id="@+id/videoView" android:layout_width="match_parent" android:layout_height="match_paren
2017-07-25 11:06:53
7857
1
原创 android 沉浸式状态栏
在开发过程中, 有的时候会出现需求就是将状态栏和标题栏一样的颜色.下面给出实现代码 PS:有的时候可能会出现让你实现白色的状态栏, 那你就可以告诉你的UI或者产品了, 你做不到.在我知道的里面,好像只有魅族和小米能够实现.其他的手机型号是不能将上方的电池栏里面东西变成黑色的.白色的沉浸式状态栏只能实现成灰白色的.导入依赖:compile ‘com.gyf.barlibrary:barlibra
2017-07-18 15:11:36
416
原创 java.lang.NoClassDefFoundError: android.support.v4.animation.AnimatorCompatHelper
在开发过程中,有的时候引入了多个三方库.在调用的时候会出现版本对应不上的原因.就会出现如标题的异常.解决的办法就是在你的build.gradle里面加入如下代码块:configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested
2017-07-17 09:44:45
8141
1
原创 部分伸缩的TextView
当我们有的时候需要TextView展示一部分的内容,然后点击某按钮,会将另外的部分展现出来。效果图如下: 下面上代码,其实非常的简单1.导入依赖:compile ‘com.ms-square:expandableTextView:0.1.4’2.在你的XML文件中复制下面的代码(如果你不是对命名有要求,不需要更改,直接复制就可以)<com.ms.square.android.expandabl
2017-07-06 16:44:14
306
原创 java.lang.IllegalArgumentException: The observer is null.异常解决
出现场景: 我的代码实现是由一个fragment显示另一个fragment; 我没有使用replace实现, 而是使用的是add的形式, 然后截取到系统的返回方法进行的返回, 但是问题就出现在这, 当我显示第二个fragment之后, 我返回第一个fragment的时候, 就会崩溃, 抛出异常就是java.lang.IllegalArgumentException: The observer is
2016-11-28 16:32:15
945
解析doc文件,需要的tm-extractors-0.4.jar包
2017-11-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人