Android学习
文章平均质量分 77
classTC
这个作者很懒,什么都没留下…
展开
-
Android自定义View---正式篇
本文转自 http://blog.csdn.net/jiangwei0910410003/article/details/42640665 稍有修改,感谢分享!考虑到篇幅和内容相关性,将其分为两篇文章,这里主要记录自定义View的具体使用 接上文 Android自定义View—前奏篇(Paint和Canvas的使用)自定义View的流程为:创建一个继承自View的自定义类 当然也可以继承自任转载 2015-09-24 22:50:01 · 3104 阅读 · 0 评论 -
Android中获取屏幕物理尺寸的方法
第一种方法//获取屏幕宽度int screenWidth = ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getWidth();//获取屏幕高度int screenHeight = ((WindowManager) context.getSystemService(C原创 2015-09-30 11:11:44 · 3305 阅读 · 0 评论 -
Android中触摸事件传递分发机制
触摸事件用MotionEvent表示,在Android中,一个触摸事件从产生到最终起作用,是一个很复杂的过程,但思路还是很清晰的,就是一层一层的传递,通过一个boolean值判断是否拦截或者消耗(也就是使用掉这个事件)。下面从基础的事件产生过程开始梳理整个流程:事件的类型:一般使用手机,在屏幕上的操作就是点击或滑动,所以一般触摸事件分为两类:点击事件:ACTION_DOWN–>ACTION_UP原创 2015-10-08 22:21:59 · 1023 阅读 · 0 评论 -
Android入门--Http网络操作
这两天因为项目需要,和后台服务器打交道比较多,包括向服务器端发送数据,接收来自服务器端的数据,所以会用到一些网络操作相关的知识,接下来就简单总结下Http网络操作的相关知识,并记录在实际操作过程中遇到的一些错误,方便以后总结复习Android中网络操作的方式主要是Scoket方式和Http方式,关于Scoket方式和http方式的比较,见服务器和客户端的交互方式(Socket,http协议)和各自特原创 2015-05-06 23:23:34 · 1903 阅读 · 0 评论 -
Android中解析html网页
本文主要记录通过网页解析得到自己想要的数据,也就是一个简单的爬虫。将使用第三方库jsoup实现,通过第三方库,能够快速方便的解析html。在开始之前,需要具备以下能力:首先,需要对网页编程有一点了解,知道一个页面的结构,标签的含义,知道html网页其实是一种xml格式的文件。如果对这些都了解的话,就可以很方便的进行网页解析了,如果不太熟悉,建议先了解一下网页编程。然后,在使用第三方库之前,最好是原创 2015-10-12 22:50:35 · 7808 阅读 · 15 评论 -
Fresco 图片圆角实现原理及 Android 中图片圆角实现方法
上篇文章 介绍了 Fresco 基础使用和实现图片圆角的方法,可以通过两种方式来实现圆角:BITMAP_ONLY 模式和 OVERLAY_COLOR 模式。本文通过分析 Fresco 源码来介绍这两种方式实现圆角的原理,并总结 Android 中常用的实现图片圆角的方法。本文重点分析 Fresco 中实现图片圆角的源码,其他部分的源码,将在后续文章中介绍。Fresco 中圆角实现原理在 com.f原创 2015-12-28 16:13:16 · 3534 阅读 · 0 评论 -
Android 入门 -- AsyncTask
异步任务机制(AsyncTask),目的是解决 Android 中不能在主线程中执行耗时操作的问题,由于 Android 系统的特性,如果在主线程中执行耗时操作,将会导致界面卡顿无法及时响应,容易引起 ANR(Application Not Responding)。在 Android 开发中一般会将耗时操作放在子线程中执行,比如网络请求,文件读写操作等,子线程执行完成后再通知主线程更新界面。因此便有原创 2015-04-22 23:21:41 · 1543 阅读 · 0 评论 -
Android开发容易忽略的小错误记录整理
计划这篇博客长期更新,用于收集整理在开发过程中遇到的问题和一些解决办法1. android.content.res.Resources$NotFoundException: String resource ID #0x15字面意思是资源没有找到,错误是在使用TextView的setText()时报的,所以从这里入手开始检查,发现了错误所在: holder.tvAtyItemLaunchTime.se原创 2015-06-25 19:59:22 · 1217 阅读 · 0 评论 -
Android中时间日期类使用总结(Calendar和Date)
Calendar类和Date类都来自java,在java.util包下,在JDK1.0中,Date类是唯一处理时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始新增了Calendar类,并**推荐使用**Calendar类进行时间和日期处理。原创 2015-11-26 12:16:53 · 19532 阅读 · 1 评论 -
Android中RecyclerView实现下拉刷新上拉加载更多
在ListView中实现下拉刷新上拉加载更多是很方便的,在RecyclerView中要实现这个功能,需要一些新的思路,当然习惯后也是很简便的。下面开始这个过程的总结思路在RecyclerView中,默认没有HeaderView和FooterView,所以只能开发者自己来实现这两个View,通常的做法是:使用官方的刷新控件SwipeRefreshLayout来实现下拉刷新,然后自定义一个FooterV原创 2015-11-29 22:35:15 · 1867 阅读 · 0 评论 -
AndroidStudio中配置NDK开发环境和编译Fresco
本文记录在 AndroidStudio 中配置 NDK 开发环境并编译 Fresco 源码。 有两种方法可以查看 Fresco 的源码,第一种是比较常见的,在AndroidStudio 中通过 Gradle 的 compile 导入 Fresco,然后就能查看 Fresco 的源码了,第二种是通过 下载 github 上的 Fresco 源码,在本地编译使用原创 2015-12-15 22:56:35 · 1404 阅读 · 0 评论 -
Fresco 基础使用
本文首先介绍一下 Facebook 推出的这个强大的图片加载框架以及一些简单的使用,在后续的文章中会逐步深入探究它的实现原理以及一些值得学习的编程思想。Android 中加载图片Android 系统是一个多用户的 Linux 系统,每一个应用会分配一个独立的 Linux 用户进程,基于这样的的运行机制,应用在运行过程中能够使用的内存大小是有限的,一般在设备出厂后,单个应用可分配的最大内存就确定下来了原创 2015-12-26 14:44:12 · 2053 阅读 · 0 评论 -
GreenDao 数据库简单使用及数据库升级更新
前面的基础使用先占坑,遇到更新的问题,这里先记录数据库更新的问题,有空再来更新前面的基础使用部分在进行数据库的更新时,大致步骤如下:编写更新后的数据库结构,并运行生成器,生成更新的代码 找到 DaoMaster (自动生成的文件)修改 SCHEMA_VERSION 的值为需要更新的版本号找到 onUpgrade()方法,注释掉其中的 dropAllTables() 和 onCreate()原创 2015-12-26 20:13:42 · 2713 阅读 · 0 评论 -
Android 中 Retrofit 结合 RxJava使用
最近在学习一些关于 RxJava 和 Retrofit 的相关内容,通过 给 Android 开发者的 RxJava 详解 这篇文章对RxJava 有了一些了解,接着通过 ReactiveX 中文文档 了解了一些相关概念和思想,然后通过 Retrofit 官网 和 Retrofit 在GitHub上的例子 简单了解了Retrofit 的使用,在使用 Retrofit 之前,需要先了解下 RESTf原创 2016-02-13 16:40:05 · 1884 阅读 · 1 评论 -
黑大助手后端和Android端开发笔记
黑大助手 的功能:黑大助手是一款为黑龙江大学在校学生服务的 Android 端应用,提供 查课表,查成绩,查考试,问答社区以及获取校内最新资讯的功能。 下面开始整理整个项目从构思到完成这个过程的一些学习经历由于学校官方移动应用 i黑大实在太难用,而且数据更新不及时,消息推送不及时,所以想着自己写一个应用,可以查看一些学生信息,比如课程表,成绩表,考试安排等信息,思路还是比较简单的,就是原创 2016-03-13 22:56:04 · 2376 阅读 · 1 评论 -
Android自定义View遇到的问题
在尝试画一个圆角矩形框的时候,用了两种方式实现,但是发现画出来的效果不一样,很是费解,不明白为什么会不一样,这里先收集起来,后续再解决。第一种方式画两个圆角矩形,重叠内部的圆角矩形稍小一点,并且颜色和背景色相同,这样就能形成一个圆角矩形框了,代码如下: @Override protected void onDraw(Canvas canvas) { super.onDr原创 2015-09-26 11:14:44 · 1275 阅读 · 0 评论 -
Android自定义View---前奏篇(Paint和Canvas的使用)
本文转自 http://blog.csdn.net/jiangwei0910410003/article/details/42640665,稍有修改,感谢分享!在实现自定义View之前,有必要掌握Android中画图的相关类的使用方法,这是自定义各种酷炫界面的基础。主要使用到以下两个类:画笔:Paint画布:Canvas1. Android中的Paint和Canvas的概念和使用方法Andro转载 2015-09-23 22:39:18 · 2858 阅读 · 1 评论 -
模拟网站登录实现----Python
最近在学习Python,于是想着使用Python来实现一个网站模拟登录的过程,简单记录下: 所谓模拟登录,就是利用代码模拟浏览器网页中的操作,登录过程,在电脑端的浏览器中,需要用户输入用户名和密码,然后点击登录,登录成功则进入首页等,现在要将这一过程转换成代码操作,首先就需要了解点击登录那一瞬间浏览器都做了什么,怎么和服务器通信等。下面通过实例记录总结需要的工具:HttpWatcher代码编辑原创 2015-08-06 21:15:41 · 1006 阅读 · 0 评论 -
Android入门--ActionBar的使用
1.ActionBar需要Android 3.0及以上支持;如需向下兼容,集成v7 appcompat library库到文件中,并且Activity需要继承ActionBarActivity,然后在 Manifest 文件中,更新 标签或者单一的 标签来使用一个Theme.AppCompat主题。2.ActionBar中的菜单选项需要在res/main文件中创建,并进行相关设置,然后原创 2015-03-14 19:52:41 · 1269 阅读 · 0 评论 -
Android入门--BroadcastReceiver的使用
package com.example.testbroadcasereceiverregiste;import android.app.Activity;import android.content.Intent;import android.content.IntentFilter;import android.os.Bundle;import android.util.Log;i原创 2015-01-02 22:18:09 · 750 阅读 · 0 评论 -
Android入门--Handler的使用
第一篇博文啊,学习编程一年了,迷茫混乱中走来,大致确定了学习的方向,这阵子突然发现以前学过的好多些东西都差不多忘了,想要复习才发现手头没有笔记,好好反思下以前的学习方法,计算机方面的学习确实很难做到写笔记,但没有笔记又不能总结复习,于是找到了博客这东西,以前在学习过程中遇到问题,百度一下,很多技术性的解答都出自博客,从那些博客中确实学到很多,也解决了很多问题,在此表示感谢。话说回来,既然准备走上I原创 2015-01-02 21:25:57 · 839 阅读 · 0 评论 -
Android入门--ListView使用总结
简单介绍ListView和Adapter之间的联系四种最常见的Adapter和ListView的使用BaseAdapter使用时的ListView性能优化原创 2015-03-15 18:01:28 · 1277 阅读 · 0 评论 -
使用AlertDialog时遇到的一个小错误,简单记录下
今天在使用AlertDialog时遇到了一个奇葩的错误,下面简单记录下 // 游戏失败 private void lose() { new AlertDialog.Builder(getContext())// .setTitle("result")// .setMessage("很可惜,游戏失败!走了" + stepCounter + "步")// .setPo原创 2015-04-04 17:17:26 · 1236 阅读 · 0 评论 -
Android入门--SharedPreferences使用总结
Sharedperferences数据存储是Android系统的一种数据存储方式,这里简单介绍下Android系统的数据存储方式,Android系统提供了4中数据存储方式:Sharedperferences :该存储方式适用于简单的数据保存,如配置属性,保存用户名等具有配置性质的数据存储,保存的数据是xml格式文件,通过键值对来获取和存储数据,不适合数据量较大的保存方式;文件存储(File):文原创 2015-04-26 19:42:42 · 1392 阅读 · 0 评论 -
Android入门--回调的概念及使用
之前在Java中的回调学习不够深入,导致现在遇到Android里需要使用回调时犯迷糊了,于是花了些时间在网上学习下,现在还算能理解,然后做个记录; 首先是回调的概念,引用自网络: 回调函数 就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生原创 2015-04-25 21:57:56 · 964 阅读 · 0 评论 -
Android入门--WebView使用总结
WebView,字面理解就是网页浏览,用于加载显示网页,类似浏览器,使用了WebKit渲染引擎加载显示网页,Android及iOS的webView的引擎都是webkit,对Html5提供支持.下面整理一些webView的基础概念和使用方法:添加权限(容易忽略的小失误):AndroidManifest.xml中必须使用许可”android.permission.INTERNET“,否则会出Web p原创 2015-04-27 16:15:30 · 1947 阅读 · 0 评论 -
Android入门--ViewPager使用总结
ViewPager,是在Android3.0之后新增的API,可以用于导航栏,页面切换等控件,其主要功能是使视图可以左右滑动,使用时注意需要导入android-support-v4.jar包,如果创建的项目是3.0之后的,系统会自动导包,就不需要费心。当然,如果遇到导包问题,也不要着急,下面是解决办法:先检查项目中是否存在android-support-v4.jar包,如果不存在,就检查sdk中是否原创 2015-04-26 15:35:08 · 1433 阅读 · 0 评论 -
Android入门--Fragment使用总结
关于Fragment的基本概念,贴上大神对官方文档的翻译 android Fragments (Android官方文档中文版) 感谢分享!看过官方文档,对Fragment的基本使用应该有所了解,下面简单总结下使用方法:一个最简单的Fragment使用,需要继承自Fragment类,并实现至少3个方法: onCreate() 在创建Fragment的时候调用这个方法,这里初始化相关的组件,跟A原创 2015-04-30 16:50:21 · 1037 阅读 · 0 评论 -
Android入门--实现选择并编辑图片设置成头像
在很多时候需要更换头像或者选择图片,所以这里总结下实现选择并编辑图片然后设置成头像的方法,下面开始: 整体结构如下: 1.创建项目,命名为ChooseImage_test创建完成,在drawable-hdip文件夹中添加一张默认头像图片,用于在用户选择头像之前显示或者当用户未选择头像时做默认头像: 2.创建布局文件这里为了贴合实际,整个页面就只有一个ImageView,当然现在是矩形的Imag原创 2015-05-15 23:59:50 · 5868 阅读 · 3 评论 -
Android入门---下拉刷新上拉加载更多策略的实现
最近需要实现一个下拉刷新上拉加载更多的项目,目前已经实现,下面总结下实现过程中遇到的问题和相关解决;首先理清思路:因为涉及到网络获取数据以及数据的缓存,所以看似简单的一个实现,加上这些后就变得稍微复杂点了,那就一步一步由浅入深的理解; 我将整体结构分成三个部分完成: 1.进入首页,先获取数据填充当前ListView(需要缓存) 2.下拉刷新,获取最新数据(无需缓存,直接联网获取) 3.上拉加原创 2015-06-08 23:04:54 · 1722 阅读 · 0 评论 -
Android中Intent-filter的四个属性Action,Category,Extras,Data
原文出处:Intent中四个重要属性详解 Intent作为联系各Activity之间的纽带,其作用并不仅仅只限于简单的数据传递。通过其自带的属性,其实可以方便的完成很多较为复杂的操作。例如直接调用拨号功能、直接自动调用合适的程序打开不同类型的文件等等。诸如此类,都可以通过设置Intent属性来完成。 Intent主要有以下四个重要属性,它们分别为: Action:Action属性转载 2015-07-08 21:39:31 · 4132 阅读 · 0 评论 -
Android中AndroidManifest.xml文件解析
原文出处:Android学习笔记之AndroidManifest.xml文件详解一、关于AndroidManifest.xmlAndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities转载 2015-07-08 21:04:01 · 1154 阅读 · 0 评论 -
解决百度地图230错误(App Scode码校验失败)
错误原因很简单,就是ak不匹配,一般这种错误是出现在App签名打包发布后,也就是正式版的App中使用的ak会与开发时的ak不同,因为根据官方文档,这个ak的组成,是数字签名+“;”+包名; 在开发时(也就是debug版)用的是sdk的数字签名,获取方法很如官方文档所述。 在发布时(也就是release版)用的是打包签名时的签名,所以在在正式发布时,如果依然使用之前之前的ak,会报如下错误: 解原创 2015-08-16 13:19:22 · 18199 阅读 · 0 评论 -
Mac 下安装 MySql
本文记录在 Mac OS X 10.11 环境下安装 MySQL Community Server 5.7.12 的过程以及期间遇到的一些问题。详细的安装过程可以参考官方文档下载首先下载 MySql 安装包,在 MySql 官网 下载安装包,我下载的是 mysql-5.7.12-osx10.11-x86_64.dmg,在下载的过程中可以去看看官方的文档,了解一些相关内容。安装安装过程和普通软件安装是原创 2016-04-22 15:34:56 · 858 阅读 · 0 评论