HappyAndroidi的博客

Android的救赎

排序:
默认
按更新时间
按访问量

使用A*算法求迷宫最短路径问题

原创文章,转载请联系作者 时光只解催人老,不信多情,长恨离亭,泪滴春衫酒易醒。 前言 最近接触了一个挺有意思的小课题,跟大家分享一下。就是利用A*算法,来计算迷宫可行路径。有关这个算法的知识,大家可以看看A*算法维基百科以及A星算法详解来稍作了解。代码地址在此Maze,喜欢Pytho...

2018-08-01 23:16:56

阅读数:14

评论数:0

使用Kotlin的DSL构建Recyclerview适配器

原创文章,转载请联系作者 前言 这是Kotlin实践日记的第一章,使用Kotlin构建一个,使用方便、多功能的Recyclerview适配器——AcrobatAdapter。 AcrobatAdapter让开发者专注于Item的配置,包括Item的UI和数据显示,以及单击、双击、长按事件...

2018-07-09 22:59:42

阅读数:33

评论数:0

Android 自定义View——随移动距离改变弧度布局

PullArcLayout简介下拉可以随手指移动距离改变弧度的布局——ArcContainer先看看效果吧思路如下这个效果的最初始是因为项目中的需求效果,写完之后觉得还不错。就把思路整理了一下,顺便记录一下自己的想法。 原项目中使用的下拉框架在这里就不在做展示,而使用YListview做替代。其实...

2017-02-23 20:02:52

阅读数:925

评论数:0

supportsRtl属性影响TextView的textAlignment属性,文字无法居中

manifest使用supportsRtl属性 此属性是要实现RTL(从右到左)的布局镜面反射才会使用的。 开启了此属性后那些带有start和end的属性才可以使用。或者是在layoutDirection属性设置后,才能使用start或者end属性。为了适应不同地区的不同习惯,有的地区习惯从左...

2017-02-16 11:25:08

阅读数:799

评论数:0

Android Studio自动生成单例代码

AS中有可以自己设置代码模板,使用起来简单方便。同样的,单例类的代码样式统一,除了类名外全部一致。所以使用模板更加方便。 在设置中的Editor—Live Template中新建模板,然后把单例的模板代码粘贴上去。 其中的NAMENAME属于自定义字段,给它赋予一个值即可。步骤如下: ...

2017-01-20 14:55:59

阅读数:3130

评论数:0

Android知识点收集

View篇 ViewPager使用PagerAdapter的notifyDataSetChanged()方法,不会立即触发ViewPager.PageTransformer的动画效果,必须在滑动后才会触发。

2017-01-16 17:13:24

阅读数:563

评论数:0

RelativeLayout.LayoutParams使用addRule后出现错位

在ListView中使用RelativeLayout.LayoutParams的addRule方法后,出现组件错位的情况。 RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(); params....

2017-01-11 16:06:16

阅读数:993

评论数:0

Android DrawerLayout使用StatusBarUtil设置状态栏颜色失败的解决办法

本文是处于5.0以上系统的环境下进行的,以下暂时未能验证。 众所周知,4.4以下状态栏一般是无法改变颜色的,就是系统默认的黑色。4.4以上之后,系统可以设置状态栏颜色了。一般我们在进行状态栏适配的时候,就会分三种情况,4.4以下、4.4以上、和5.0以上。 之前我在适配的时候,4.4以上选择的半透...

2016-06-01 09:43:29

阅读数:2833

评论数:2

Android Studio运行程序时显示apk not exists

解决办法,把gradle刷新就行辣 以上

2016-05-16 18:18:34

阅读数:343

评论数:0

RecycleView的分割线之私人订制

首先,来几个分类吧: 默认分割线:高度为2px,颜色为灰色 addItemDecoration( new RecycleViewDivider(mContext, LinearLayoutManager.VERTICAL)); 自定义分割线:自定义分割线drawable addItemDecora...

2016-05-15 21:56:07

阅读数:1628

评论数:0

NavigationView解决Item图标不显示原始颜色

NavigationView是一个很好的实现侧边抽屉效果的组件,主要解决一下可能遇到的问题。 设计好的彩色图标,在NavigationView中却是灰色。可以设置属性app:itemIconTint,将item的图标设置为统一颜色。但这样也并不好,所以可以通过如下方法: setItemIcon...

2016-05-15 11:09:09

阅读数:5097

评论数:4

ToolBar左侧图标设置以及点击事件配置

Material Design包下的ToolBar已经在逐步取代以前ActionBar的地位了,相比较之下,ToolBar更加显得灵活,已经不局限于一个简单的标题栏。 更像是一个自由的控件。 如何给ToolBar设置左侧图标。 ToolBar左侧的图标其实很讲究的,之前在不了解情况前,我使用...

2016-05-05 23:28:58

阅读数:16162

评论数:0

Android论如何写一个正确的单例模式

犹记得当初学单例模式的时候,学的是这样的 饿汉式,简单粗暴无脑。但是无法延迟创建对象 public class Singleton { private static Singleton = new Singleton(); private Singleton() {} ...

2016-04-14 21:37:45

阅读数:397

评论数:0

自定义View——神之ViewDragHelper实现ListView滑动删除

之前有段时间在自学研究自定义View,刚好那时候需要做一个项目,有用到ListView滑动删除的功能。趁着这段时间有空,就把这个Demo分享出来。 先看看实际的效果吧 因为Gif录制软件的关系,鼠标漏掉了,大家将就看哈。要是有什么好的录制软件,也可以推荐给我。 先说说思路:思路这个东西其实很重要...

2016-04-01 00:17:38

阅读数:791

评论数:0

Android Accessibility实现程序锁功能

之前在做卫士项目的时候,做程序锁的时候,遇到一个问题。以往做程序锁的时候,我们都会选择开启一个后台服务,然后在服务中不断获取当前运行的栈信息,提取栈顶的packageName来判定当时运行的程序是否为锁程序。但这种方式在API21之后不能用了,因为getRunningTasks这个方法在API21...

2016-03-24 23:47:07

阅读数:620

评论数:0

Android Studio下简单编译AIDL方法

今天当我天真的打开Android Studio,准备开始一天开心的工作时。一个小小的问题迎头向我砸来,那就是有一个小模块需要用到源码里的AIDL。然后我直接把它扔在相应的包里了。如图: 包名什么的都是Ok的,我已经按照代码里的包名改过来了,但是还是一直编译不通过。记得Eclipse里直接放到这...

2016-03-15 19:43:50

阅读数:2852

评论数:0

Android使用ViewPager实现导航页根据情况禁止滑动以及点击切换

前段时间由于项目原因,要做一个导航页面。但有时会需要用到根据某些条件禁止滑动,以及通过按钮点击切换页面的效果。刚好趁现在把这些东西写下来,分享出来。一、ViewPager点击切换因为之前做的那个项目是一个安全卫士的项目,在手机防盗这一块需要做一个导航页面。导航页面嘛,大家懂得一页一页往下翻过去,底...

2016-03-13 23:55:14

阅读数:2567

评论数:0

Android实现随触摸移动而变化的效果

Android可以做很多有意思的事情,而这正是我喜欢她的原因。今天会做一个在屏幕上随着手指移动而变化的效果。 步骤如下首先,我们要自定义一个View组件,而这个组件就是在之后会用到的屏幕上移动的小组件。然后我们在一个布局上添加这个View,并且给此View添加onTouch触摸事件。 此外,此组件...

2016-03-05 22:37:23

阅读数:701

评论数:1

Activity详解数据传递以及隐式Intent启动

数据传递 简单数据intent.putExtra(key , value);----------------------------Intent intent = getIntent(); intent.getXXXExtra(key); // xxx ---- 指的是早前传递的数据类型复杂数据S...

2016-03-04 23:45:00

阅读数:437

评论数:0

AsyncTask分析

Android的UI线程是非阻塞线程,不能在主线程做一些耗时的操作。否则一旦超过五秒,会抛出ANR(Application Not Responding)异常,就是应用无响应。故此,一些耗时的操作都要放置在子线程去做,但同时在子线程内又不能更新UI,因为UI线程非阻塞,要是你改一点他改一点,岂不是...

2016-02-26 22:05:40

阅读数:314

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭