Android
潘建成
选择开始就不要想着要放弃!
展开
-
Android:使用MuPdf开源库阅读PDF文件
一时兴起 因为自己前段时间一直在做故事会的一个客户端,当然是非官方版,主要是由于自己的兴趣所致。以前就挺喜欢看故事会的,所以就希望做一个故事会的客户端,在手机上随时随地地看。因为故事会的官方APP的体验实在是太差了,而且资源还不全(而且还收费),所以我就打算自己做一个,然后去收集网上的资源。因为网上的故事会是以PDF文件的形式出现的,刚开始我想调用手机上的软件例如WPS等来阅读,后来一想反正做那就原创 2016-05-04 20:24:58 · 15504 阅读 · 54 评论 -
android仿微信联系人索引列表
前言 因为自己在做的一个小软件里面需要用到从A-Z排序的ListView,所以自然而然的想到了微信的联系人,我想要的就是那样的效果。本来没打算自己去写,想要第三方写好的东西,搜了几个之后发现有的太复杂了,有的简单是简单,但是不符合我的要求,所以我就来个整合,把复杂性和简单性合二为一。实现 先来看效果图吧: 要点分析 要实现这样的效果需要考虑下面的几个问题:右边字母栏的绘制点击效果的实原创 2015-09-29 22:00:25 · 2797 阅读 · 0 评论 -
使用DrawerLayout实现双向侧滑菜单
前言 在android开发中,很多的app都有使用侧滑菜单,有的是自定义控件来实现侧滑菜单,但是android给我们提供了DrawerLayout类来实现侧滑菜单,侧滑效果很好,今天我就说说怎么去使用它来实现侧滑菜单。实现 我们先来看一下效果图: 这里我们实现的双向侧滑菜单,在界面上部加入了两个按钮,点击就会打开菜单或者关闭菜单,当然也可以自己去滑动。 布局文件的代码:<Line原创 2015-09-12 21:23:06 · 1208 阅读 · 0 评论 -
AndroidStudio导入LeanCloudjar包编译出错及解决方法
问题 这段时间再做用LeanCloud的一个App,不过一开始就出现了问题,只是把jar包导入到AS编译就不通过,出现的如下的问题界面: 从图片中我们可以看到的问题大概就是在fastjson.jar和httpmine-4.2.4.jar中存在相同的文件“META-INF/LICENSE.txt”导致编译不通过,因为我对AS使用的Gradle不太熟悉,因为一直是Eclipse党,查询了原创 2015-09-04 11:39:35 · 1200 阅读 · 0 评论 -
android中assets文件夹的使用<一>
前言 在android的目录结构中,我们存放图片资源一般都是放在/res目录下(就我自己而言),但是,android既然提供了assets文件夹,那么它该如何使用呢?它和res文件夹有什么区别呢?assets:不会在R.java文件下生成相应的标记,存放到这里的资源在运行打包的时候都会打入程序安装包中res:会在R.java文件下生成标记,这里的资源会在运行打包操作的时候判断哪些被使用到了原创 2015-07-22 16:25:04 · 1823 阅读 · 0 评论 -
Jsoup解析HTML获取数据
前言 当进行和网络相关的开发,我们总是希望能够有API接口供我们调用,但是有时候我们并不是总能够找到API,就像我之前在做在线音乐播放器的时候,找百度的API接口就找了好长的时间,如果没有API的时候那么我们该怎么做呢?没错,我们可以直接解析HTML页面,从中得到我们的数据,而今天我给大家介绍的就是一个非常好用的框架:Jsoup实现 首先我们必须要知道从那里看到HTML的数据,这里我以笔趣原创 2015-07-29 21:27:00 · 3675 阅读 · 0 评论 -
设置ActionBar的背景色
设置ActionBar的背景色原创 2015-04-18 22:56:41 · 1164 阅读 · 0 评论 -
Android ImageView设置长度高度为wrap_content时高度根据图片比例自适应
[java] view plaincopyprint?<ImageView android:id=”@+id/img_1” android:layout_width=”fill_parent” android:layout_height=”wrap_content” android:adjustV转载 2015-08-29 08:58:21 · 2087 阅读 · 0 评论 -
Android 设置EditText光标Curso颜色及粗细
在android的输入框里,如果要修改光标的颜色及粗细步骤如下两步即可搞定:1.在资源文件drawable下新建一个光标控制color_cursor.xml[html] view plaincopyprint?<?xml version=“1.0” encoding=“utf-8”?> <shape xmlns:android=“http://schemas.android.com/apk/r转载 2015-08-29 08:56:37 · 832 阅读 · 0 评论 -
Android 打造可下拉的EditText--DropEditText
android的默认Spinner只能下拉选择内容,而不能选择,有时候我们想提供给用户更加人性化的UI,既可以通过下拉选择,也可以通过EditText输入,是要定义两个组件吗? 这样并不适合我们的设计要求。那么, 我们就自己写一个这样的组件吧——DropEditText。一、思路1、DropEditText并不是一个Spinner,也不是一个EditText。2、这里的解决方式是,组合以个EditT转载 2015-08-29 08:51:00 · 1660 阅读 · 0 评论 -
Android仿QQ聊天记录待定与删除功能效果
模仿手机qq,历史聊天记录长按会弹出待定和删除按钮的效果。qq效果图 代码实现的效果图 首先,看到这个效果,想一下实现的思路:弹出的待办和删除按钮,是通过dialog实现的。那么这个dialog就要能完成几个效果,第一:自定义界面,第二:控制dialog的显示位置,第三:点击dialog区域之外的地方,dialog要消失,第四:dialog显示的时候,activity不要变暗。下面就一步一步转载 2015-08-29 08:45:53 · 2025 阅读 · 0 评论 -
AndroidStudio查看模拟机生成的数据库文件
前言 我们在测试应用时有时需要删除数据库文件,在真机上需要root权限不太好弄,但是在模拟机上就比较简单了,可以直接删除,可是第一次不知道在哪里去删除,我也是找了一会才找到,下面告诉大家路径:实现 我们先在AndroidStudio上找到如下图标: 点击之后就会出现下面的界面: 如我在图片上标注的那样,左边表示你当前的虚拟机,右边我们选择File Explore,在 data/d原创 2015-07-22 15:59:41 · 13106 阅读 · 1 评论 -
Fragment与Activity进行通信
前言 Fragment是android开发中常用的一个控件,我们可以在Fragment内部进行不同的控件之间的通信,如点击了一个按钮就可以在一个TextView上显示一个数据,因为Button和TextView都是在Fragment内部,能够得到它们的对象,所以我们当然可以进行通信,那么,点击Fragment内部的按钮能够在Activity中的TextView上显示吗?我们在Fragment内部没原创 2015-09-13 11:35:26 · 1037 阅读 · 0 评论 -
Android开发中的总结内容
当ListView的Adapter中List的内容发生变化时,我们需要及时更新ListView显示的内容,这时我们需要调用Adapter子类的notifyDataSetChanged()方法来通知系统数据发生变化,要及时更新ListView显示的内容了。原创 2015-04-30 21:59:13 · 813 阅读 · 0 评论 -
android使用自定义字体
前言 Android有自己的默认字体,但是有时候我们并不想使用它的默认字体,我们想使用诸如楷体,隶书等字体,那么该怎么去做呢?本文就是说明该如何使用自定义的字体。实现 先来一段源码:public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState){原创 2015-09-18 20:58:53 · 1224 阅读 · 2 评论 -
Android:ubuntu下编译MuPDF源码
前言使用MuPDF也有一段时间了,虽然不是太熟练,但是也能解决一般的问题了。从一开始不能把项目建起来,无法加载so文件,到现在基本都可以解决问题。然后一直的遗憾就是没有自己去编译源码得到so文件,一直都是用别人的so文件,而且还不全,只有armeabi-v7a,缺少armeabi、x86等so文件。所以就下定决心去自己编译源码。这么说总让人认为编译源码很难一样,其实很简单,只是自己一开始就畏惧了罢了原创 2016-12-28 16:52:26 · 3756 阅读 · 1 评论 -
android小说阅读器智能断章功能的实现(续)
前言之前写过一篇关于智能断章的博客,那里的断章方式是得到其中的章节名并且把章节内容保存到数据库。现在看来这种方式确实有点低了,不能获取个目录就存几M或者十几M的内容到数据库吧,所以也有博友询问能不能得到章节名所在的位置然后直接从那里开始访问,一开始我是拒绝的,因为实现不了,后来发现还是可以做到的,只能是因为自己当时对别人写的代码理解的不够透彻,对实现思路不太明确,现在可以了。具体实现在实现之前,需要原创 2016-08-20 23:38:27 · 4806 阅读 · 2 评论 -
android小说阅读器智能断章功能的实现
前言【转载请注明出处】:http://blog.csdn.net/ProgramChangesWorld/article/details/47209475不知道自己突然发什么神经,有想写一个小说阅读器的冲动,想写那种从网站获取资源的在线小说和本地txt文件打开的功能,然后自己就开始规划该怎么去做。先做本地的吧,首先要解决的问题是如何实现智能断章的功能,一般来说小说阅读器都有这个功能,如果这个没法实现原创 2015-08-02 18:17:39 · 10104 阅读 · 11 评论 -
我的CSDN博客阅读器完成啦!!
前言 因为自己比较喜欢逛CSDN,所以就希望能够随时查看博客,收藏博客,而CSDN自己提供的客户端我用了之后感觉并不能很好的满足自己的需求,所以一个可怕的念头在我的脑海徘徊 –“自己写一个吧!!”被这种意念控制了自己的身体,然后就是一个月的加点赶工,终于我的博客阅读器诞生了,(⊙o⊙)… 软件详情 下载 这个没有上线,因为我提交的时候它说不收录这个东西原创 2015-09-28 23:14:33 · 1128 阅读 · 0 评论 -
【开源-Android】基于蓝牙备份联系人
前言 如何把手机通讯录里的联系人备份到另一个手机里,或许大家都会有不同的方法。其一:一个一个的输入,好吧,太麻烦;其二:通过云端备份工具,如百度云,微云等,这个确实很方便,但是不得不把自己联系人信息存到人家的服务器,有些人就不愿意干了。 那么,既能很方便又能保护隐私的方法那就是今天我开源的一个应用了-蓝牙备份联系人。只需要两个手机都安装这个应用那么就可以通过这个软件进行通讯录的备份。 先给大家原创 2016-03-12 10:06:12 · 2523 阅读 · 1 评论 -
【开源-Android】BT天堂客户端
前言 喜欢看电影的人应该知道这样一个网站“BT天堂”,那里确实有很多的电影,而且是提供高清电影种子,并只提供种子。所以我就想着能不能做一个Android版的客户端,在手机上能更方便的查找电影,下载种子文件,然后就是今天分享的一个软件了。正文 先来看一个软件的截图: 从图片我们可以看到,该软件可以搜索电影而且还可以通过类别来查找电影。查找到一个电影之后,就会显示该电影存在的种子原创 2016-03-10 23:03:47 · 9139 阅读 · 0 评论 -
RecyclerView实现上拉加载,下拉刷新
前言 最近在使用RecyclerView,之所以不使用ListView是因为RecyclerView可以十分方便的实现横向的列表显示,这就是我抛弃ListView的原因。但是当使用纵向的RecyclerView的时候,问题就出现了。因为ListView在很多情况下是要上拉加载数据的,突然换到了RecyclerView就不知道该怎么办了。当然网上也有一些实现了屏蔽所包含View类型的上拉加载控件,但原创 2015-11-24 18:01:18 · 1671 阅读 · 0 评论 -
收藏的Android自定义控件
源码下载 源码下载原创 2015-11-23 20:14:02 · 604 阅读 · 1 评论 -
使用VelocityTracker获取在屏幕滑动的速度
前言 在写自定义控件的时候,我们有时候需要根据在屏幕滑动的速度来判断接下来的操作是什么。而Android给我们提供了VelocityTracker这个类来快速得到滑动速度,接下来我就说明该如何使用这个类。实现 我们先看一下效果图: 从效果图中可以看到,在滑动的时候我们可以获取实时的速度,有了这样的速度我们就可以进行自己的操作了。 我自己自定义了一个View->VelocityView原创 2015-10-14 20:15:55 · 2517 阅读 · 0 评论 -
对Matrix中preTranslate()和postTranslate()的理解
前言 因为在看郭霖大神的博客时有关于Matrix结合Camera实现图片的3D旋转,而其中Matrix的preTranslate()和postTranslate()方法当时不是太了解。关于android中对图片处理的内容我没怎么看过,所以不会也是在情理之中。但是既然想看会图片的3D旋转,这个又是必须要过的关,所以还是看了一点资料,发现原来只是我理解错了,并没有那么难,本文就是说说我当时是怎么理解的原创 2015-10-12 19:16:23 · 18865 阅读 · 5 评论 -
android小游戏“24点”放源码了!!
前言 在学android的时候,总觉的要做点什么才能感觉到自己在学东西,所以一个小游戏24点就打算做出来试试。为什么要做24点游戏呢?因为之前用javaSwing组件做了一个电脑版的24点,学了android之后就像做一个手机版的,好了,这就是我做24点的缘由了。实现 先给大家看一下效果图: 图中有四张扑克牌,一个用来显示答案的输入框和两个按钮。点击开始按钮就会出现四张扑克牌,然后玩家原创 2015-09-18 17:55:47 · 3847 阅读 · 2 评论 -
Android开发中关于Layout_weight的理解
在Android布局中,如何布局美观是一个很重要的问题。比如我想要把一个屏幕分成 1, 7, 1 三份,我可能就会设置layout_weight=“1”,layout_weight=“7”,layout_weight=“1”,这里是垂直方向设置。。所以,这里关于layout_height的值该怎么设置就是问题了。如果设置为 “wrap_content”即为包裹内容,这样就会使布局随内容而改变原创 2015-03-16 19:38:33 · 638 阅读 · 0 评论 -
Android解析UniCode编码
前言 从网络获取JSON信息的时候,有时我们会获取到一些不知名的东西,比如下面的情况就是我获取的json信息: 可以看到artist_name我所希望的是歌手的名字,结果出来的却是一堆不知道什么东西的编码,我大概的猜测一下,它有可能就是UniCode编码,因为它和UniCode编码比较相像,原因有二:UniCode的基本格式是->\u2345之类的形式,总是4个数字和字母的集合,而给定原创 2015-07-01 23:04:31 · 6297 阅读 · 0 评论 -
android中Shape使用总结
在Android程序开发中,我们经常会去用到Shape这个东西去定义各种各样的形状,首先我们了解一下Shape下面有哪些标签,都代表什么意思.solid:填充 android:color指定填充的颜色gradient:渐变 android:startColor和android:endColor分别为起始和结束颜色, android:angle是渐变角度,必须为45的整数倍。 另外渐变默认的模转载 2015-07-30 14:32:09 · 778 阅读 · 0 评论 -
AlertDialog设置自定义高度
AlertDialog在开发中,AlertDialog是十分不错的类,它提供给我们一个通用对话框,我们只需要简单的设置一些东西就可以实现了一个具有简单功能的对话框了,包括按钮,或者是列表等等,但是我们可以注意到一个问题,那就是对话框的大小,它是自适应的,如果内容太大,我们的显示就出现了问题,比如下面的情况: 可以看到,这个内容已经占了很大的空间,看起来不是很美观,所以我们想设置它的原创 2015-05-10 19:06:03 · 3557 阅读 · 0 评论 -
关于AsyncTask的使用
以前进行关于线程的操作,全部都是用Handler配合Thread来进行,比如下载文件等耗时较长的工作,都是开一个新的线程来做,慢慢的感觉有点麻烦了,因为在Thread中不能操作UI界面,如果我想改变一个View的内容,就必须借助Handler来实现,不太方便,所以,偶然的机会让我认识了AsyncTask,它用起来就很方便,虽然我还是不太懂它的实现原理,看了网上大神的博客,写的是它的源码,说的内容我原创 2015-04-28 23:11:03 · 799 阅读 · 0 评论 -
Android判断后台服务的开启状态
在用到Service类的时候,我们要开启一个服务,我们首先要判断是不是已经在后台开启过了这个服务了,如果开启过了我们在开启一起,结果是肯定的,程序崩溃了。所以我们要先判断后台的程序是不是开启了,然后根据状态判断我们要不要再开启一次,但是该怎么做呢?其实也很简单,准确说是代码很简单,好了,直接上代码:private boolean isServiceRunning(String service)原创 2015-05-02 19:37:00 · 662 阅读 · 0 评论 -
Android中Fragment的两种使用方法
Fragment作为Android的一个基本组件,学会使用它还是很方便的,当然第一次接触Fragment,我还是很蒙的,真的是不会使用。但是随着时间的积累,我慢慢的也懂了,想想刚开始的无奈,现在真是有一点小开森啊^_^好了,开始讲使用的方法了。Fragment有两种是使用的方法,根据使用的方法不一样,它分为动态使用和静态使用,下面我分别进行介绍。 要使用Fragment,原创 2015-04-26 21:56:01 · 1301 阅读 · 0 评论 -
Android“再按一次退出程序”的具体实现
Android应用中许多退出程序的方式都是在你点击了返回按钮的时候,它弹出一个信息“再按一次退出”,这个和时候我们只需要在按一次返回按钮,程序就退出了,有的 时候时间间隔是3秒或者其他的时间间隔,今天我就简单说一下实现原理。其实实现还是比较简单的,我们需要在Activity中覆盖一个方法:public void onBackPressed();这个方法在返回键被点击的时候调用,覆盖这个方法之后原创 2015-04-26 11:51:33 · 919 阅读 · 0 评论 -
Android侧滑菜单的实现
一直看别人应用里面有一个侧滑菜单,感觉好酷毙,但是自己也不会写,那个心情叫做难过了,恨自己不会。我也百度了一段时间,只恨自己的水平不高,看不懂代码,所以就找了许多的例子,但是还看不懂,终于一次偶然的机会,我找到了,是的,找到了。这个代码就很简单了,因为它提供了别人写的一个类,就是布局类,直接可以在XML中使用,然后就可以直接运行了,至于要加什么东西,就随自己的心意了。好了,不多说了,现在开始讲原创 2015-04-13 12:10:44 · 1255 阅读 · 1 评论 -
Android开发中根据图片名称获取在drawable中的ID
在Android开发中图片资源是必不可少的,如ImageView需要图片资源的ID,ImageButton需要资源的ID等等,我们可以用R.drawable.XXX可以获取图片资源的ID,但是,在某些时候,这样做很费时,我们想动态的获得资源ID,比如说,我传入一个图片名称的字符串,根据字符串来获得资源的ID这样就很方便了,没错,这样确实很方便,我们如果对图片的名称稍加改动,比如用img1.png,原创 2015-04-14 12:43:04 · 5718 阅读 · 0 评论 -
关于Activity向右滑动销毁的具体实现
在Android开发中,我们可能不喜欢Activity简单的退出方式,喜欢那种屏幕随手指滑动而滑动,当全部滑出时就销毁Activity,在很多的应用中都做了类似的使用,它使应用的用户体验更好。当然,我也想把这个东西加到自己的应用上面去,不过因为自己不会啊,看了几本书,上面都没有,只有最简单的销毁方式,一段时间我都没有在接触它了。但是,还是出现了转折点,我知道了一个网站“CSDN”,这可能就是命原创 2015-04-12 17:43:15 · 1545 阅读 · 0 评论 -
Android开发中从网上获取歌词
之前一段时间一直在看安卓方面的知识,算是入门了吧,便想做一些东西出来,安卓的音乐播放器算是比较容易下手的,所以就开始做这个东西,经过一步步的完善,随后想加一个歌词,但是读取本地歌词比较麻烦,因为还要手动的把歌词文件复制到指定文件夹,所以想从网上去获取,然后保存到本地文件夹,以后读取也比较方便。可是,因为从网络上获取资源以前也没接触过,所以做起来完全不知道该怎么下手,百度了一下,找到了相关的文章,他原创 2015-03-02 08:49:54 · 2413 阅读 · 0 评论 -
关于Activity的启动模式
Activity启动模式设置: ".MainActivity" android:launchMode="standard" />Activity的四种启动模式: 1. standard 模式启动模式,每次激活Activity时都会创建Activity,并放入任务栈中。 2. singleTop 如果在任务的栈顶正好存在该原创 2015-04-11 22:44:22 · 473 阅读 · 0 评论 -
Android开发中EditText获得焦点弹出输入框改变屏幕布局的问题
在Android开发中,比较头疼的问题就是EditText总是已启动就获得焦点并弹出输入框,感觉很是不爽。而且,因为输入框的弹出,导致屏幕布局获得改变,有些空间被挤压到一起,很是难看,所以,我就上网搜了一下如何解决这些问题,终于找到了问题所在,并且顺利的解决了问题。问题的原因是没有在 AndroidManifest.xml 文件中进行设置。不过该要设置什么属性呢?需要设置的属性是:原创 2015-04-04 20:50:25 · 2169 阅读 · 1 评论