- 博客(22)
- 资源 (13)
- 收藏
- 关注
原创 Android VR视频
话不多说,先上图(眼睛模式) 参考的开源库——传送门 MD360Player4Android 在开源库的基础上,做了菜单和播放器逻辑。 VR功能的部分通过依赖vrlib来实现,视频播放的部分集成ijkPlayer 这里对MD360Player4Android中的一些代码做解释。 初始化VR播放器 @Override protected MDVRLibrar...
2018-08-17 16:01:01 2617 2
原创 Android Dialog的封装
效果 常规使用: Dialog dialog=new Dialog(this,R.style.DialogStyle); View dilaogView = LayoutInflater.from(this).inflate( R.layout.dialog_diylayou
2018-01-18 12:12:46 1935 2
原创 Android 5分钟实现ShareSDK分享各平台
效果图 一 首先,到官网下载shareSDK的jar包,我demo里的是3.1.2版本 http://www.mob.com/downloadDetail/ShareSDK/android 然后将你需要分享的平台的jar包导入lib 二 在你的根目录下(就是包名目录),new一个package叫wxapi,然后把你下载好的sdk里的WXEntryActivity扔进去 三 在你
2017-12-29 16:55:55 9465 10
原创 Android 等级经验进度seekbar效果
效果: 由一个横向ScrollView动态布置的一个可滑seekbar效果。 等级的Modelpackage com.leveldemo;/** * Created by KID on 2017/12/27. */public class SimpleLevelModel { private int levelId; private int minExp; publ
2017-12-27 15:18:04 1872
原创 Android 解决WebView重定向
调用webviewd的goBack(),goForward()有时候出现的并不是我们想象中的页面,可能连续调了两次goBack才能回到原来的页面。有时候url没错,页面莫名其妙的error。这些往往都是由于网页自身重定向引发的。 拿携程的网址举例子http://m.ctrip.com/ 通过对webView开启过的页面进行打印 webView.setWebViewClient
2017-12-08 16:47:27 7241 1
原创 Android 简单实现可全屏拖动,可点击的View
首先,我们都知道,拖动一个view,需要给它设置touchListener,或者重写他的touchEvent。我们以ImageView为例,自定义一个DragView,继承ImageView。 单纯的只是想让view拖动,我们只需要在ACTION_DOWN中记录初始位置,在ACTION_MOVE中记录拖动后手指移动的距离,计算出这个move操作后哦,view的四个边界坐标应该所在的位置,然后lay
2017-11-27 18:10:18 14212 4
原创 Android WebView上滑隐藏头部,下滑显示头部
UC浏览器屏幕截图 如何实现这种webView上下滑显示隐藏头部,相信很多会想到CoordinatorLayout+Toolbar,那我们先用这种方案来实现一下。 添加依赖 compile ‘com.android.support:design:24.0.0-alpha1’ 该方案主要实现来自布局,而Activity中只是将WebView加载出来<?xml version="1.0" en
2017-11-24 15:55:11 6758 10
原创 Android 首页Fragment切换常用姿势
效果图 嗯…首页常用2种Fragment切换一种是利用Fragment的hide,show来切换,另一种则直接将Fragment放在viewpager里,通过切换viewpager的item来实现。样式1 :Fragment的 hide & show这里配合RadioGroup实现,代码:import android.os.Bundle;import android.s
2017-08-28 20:40:51 3106 1
原创 Android 轮播图(Viewpager+Handler定时器)
发现好多人提到banner,第一个想法就是撸个第三方依赖。然后出bug了,打开三方代码,一堆文件无从下手,改了又担心出现新bug,然后又替换了第二个三方… 一个ViewPager能实现的功能,何必求助第三方。 Banner的实现技术点主要在于 1 无限循环,当banner滑到最后一张后继续滑动,要滑回第一张 2 自动轮播 Adapter代码import android.co...
2017-08-17 09:17:01 1617
原创 Android view的单击,双击,长按事件监听
关于view的双击事件,网上有很多demo使用GestureDetector ,在给view setOnTouchListener的时候插入。我试了下,onDoubleTap onSingleTap等几个方法都没有被调用到。而在Activity的onTouchEvent插入GestureDetector ,则完美调用各个手势事件。可是我们要设置单击,双击,长按事件的对象是view啊,不是Activi
2017-05-24 20:56:04 4665 2
原创 Android 仿今日头条评论输入框
相信不少小伙伴,在做评论功能的时候,都被输入框恶心过。 产品总会要求,自己的产品输入框要有自己特色。 既然如此,那就自己写一个呗。 先上效果图: 做一个输入框dialog很难吗?可能有些接触android不久的小小伙伴会觉得,难以入手。那我们就拆成几部来做,其实很简单。 第一步: 写弹出框样式布局 布局就一个EditText和一个TextView,做了下背景的圆角和描边处理,很快
2016-12-21 17:20:31 9846 1
原创 Android ListView三级联动,实现自定义地址选择器
说到地址选择器,好多小伙伴第一印象就是——wheelView~这玩意确实挺好用的^(* ̄(oo) ̄)^! 然而悲剧的故事发生了,傲娇的老板不喜欢wheelView那种选中条不动的效果 ~(⊙o⊙)! 好吧,其实是老板不知道从哪个忘记名字的App看到这种效果,然后坚持要把地址选择器搞成这样。话不多说,先上图: 眼尖的小伙伴,应该一眼就看出了,没错,就只是3个listView拼起来的效果。说到
2016-12-20 16:45:15 2521 2
原创 Android 根据图片高度动态设置ViewPager高度
有图片的地方,就有需求。 为什么一个App有那么多的Banner,这里就不吐槽了。我们还是直接进主题,如何让ViewPager自适应图片的高度。 效果如下: 如何去改变ViewPager的高度,都知道用setLayoutParams,我们不清楚的是,在什么时候给Viewpager设置。聪明的孩子马上就想到,我们用ViewPager的时候,有一个OnPageChangeListener是用来
2016-12-19 12:30:08 9609 11
原创 Android 仿美团加载界面
Android 仿美团加载界面发现有些App在加载页面的时候,直接show了一个ProgressDialog,然后页面就无法进行其他操作了。然而在大部分需求中,我们加载页面的情况下,是希望用户还能进行其他操作的,比如Activity中RadioGroup+Fragment这种场景,每个RadioButton对应一个Fragment,我们希望在Fragment中数据加载的情况下,还能切换fragmen
2016-12-06 15:22:52 2181
原创 RecyclerView实现瀑布流,图片自适应高度
话不多说,先上效果图对于RecyclerView,相信大家都不陌生了,这个集listView,GridView,瀑布流效果与一身强大控件,渐渐地渗透在每个App....还是回到正题,如何让RecyclerView里的图片自适应高度?我们知道,要让RecyclerView有瀑布流效果,RecyclerView设置的layoutManager必须是StaggeredGridLayo
2016-12-05 15:19:05 21669 13
原创 Android 动态禁止/允许Viewpager左(右)滑动
最近在做一个仿抖音首页效果。大致结构为, MainActivity里Viewpager带3个fragment,中间的fragment又add了4个Tab(首页,关注,消息,我)1 玩过抖音的孩子应该有点印象。在首页tab的时候,viewpager左右两个fragment还能滑出来,在关注tab,消息tab,我tab中,viewpager左右就滑不出来了——禁止了Viewpager左右滑动。2 ...
2018-11-15 09:50:49 7921 7
原创 Android 通过网址url获取网址标题
大多数场景下,我们需要展示一个网页并获取标题时,我们会用webview去load这个url,在onReceiveTitle里获取它的标题。但在某些场景下,我们想直接拿到标题但并不想展示这个网页,毕竟webView也是很吃性能的。 首先我们得获取这个url的html文本,然后从html文本中截取出title,这里我们用两种方式来获取第一种方式获取html文本代码public stati...
2018-09-11 09:50:34 3928
原创 Android SharedPreferences工具类,可设置缓存时间
使用ACache也可以设置缓存时间,但ACache在清缓存的时候会被清空。 SharedPreferences存储默认都是无时间限制的。 大概思路是,存储的时候记录当前时间,要存多久。取数据的时候判断这个数据已经存储了多久,如果超过设置的存储时间,就获取默认值。 首先,我们需要一个存储的model——SpSaveModelpublic class SpSaveModel<T> implemen
2018-05-03 16:54:36 4258 2
原创 Android WebView的前进后退,自定义Error界面
前进 webView.goForward(); 后退 webView.goBack(); 完了,就这么简单,你信不?反正我不信!(解决重定向可参考http://blog.csdn.net/qq_31390699/article/details/78753251) 嗯哼~ 要后退,我们首先要确定这个webView是否还能后退——webView.canGoBack()。 同理,要前进,我们
2018-01-15 10:05:13 695
原创 Viewpager+Fragment的一些细节
Viewpager的滑动监听addOnPageChangeListeneronPageScrolled在viewpager.setAdapter时候就会被调用一次,做业务逻辑的时候要考虑onPageScrolled第一次被调用的情况 onPageScrollStateChanged 有些操作要在页面静止时进行的,要在这里做。比如图片自动轮播,或者页面切换后完全后加载更新数据FragmentMana
2017-12-28 15:29:22 482
原创 Android 加载图片过程导致内存溢出(Out Of Memory)
加载图片的时候,啪啪啪就OOM了。 解决图片OOM之前,先来了解一下一张图片内存占用的相关因素——图片质量,图片尺寸,填充区域图片质量质量就是图片大小(多少MB,多少KB)。相对情况下图片越大,占用内存越大图片尺寸图片尺寸=图片的宽高,相对情况下宽高越大,占用内存越大填充区域填充区域就是图片显示在屏幕上的大小,可以理解为ImageView的大小。相对情况下宽高越大,占用内存越小。 (有些人一直错误
2017-12-12 17:54:09 5017 2
原创 Android 共同处理touch事件
初步了解touch事件分发和消费机制后,我们就已经清楚了,event传递是从外层容器往里传递,而消费则是由里到外判断是否消费。 有一种场景,我们希望有多个view来处理这个touch事件。可以重写View的dispatchTouchEvent。将传递中的touch事件回调出来public class MyFramLayout extends FrameLayout { public MyF
2017-12-12 16:30:03 402 1
Android 自定义dialog
2018-01-18
Android shareSDK分享demo
2018-01-02
android 等级经验进度seekbar
2017-12-27
Android 可全屏拖动,响应点击事件的View
2017-11-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人