Android学习
android基础笔记
爆米花9958
这个作者很懒,什么都没留下…
展开
-
Fragment初学6——Fragment的相关方法
Fragment常用的三个类:android.app.Fragment 主要用于定义Fragmentandroid.app.FragmentManager 主要用于在Activity中操作Fragmentandroid.app.FragmentTransaction 主要用于Fragment事务操作,熟悉数据库的应该很容易明白a、获取FragmentManage的方式:原创 2016-01-06 20:23:40 · 522 阅读 · 0 评论 -
SlidingMenu使用简介
SlidingMenu 是GitHub上的一个开源项目,用来实现SlidingMenu的菜单效果(https://github.com/jfeinstein10/SlidingMenu)目前为止,它提供了侧滑菜单的最佳实现:定制灵活、各种阴影和渐变的滑动效果也很不错。而且目前看来这个项目关注的人很多,各种issue和pull request很频繁,能够保证这个开源库的质量,遇到问题也能有人帮忙答疑原创 2016-10-14 12:33:16 · 6615 阅读 · 5 评论 -
Android系统自带样式(android:theme)解析
做Android开发时经常会修改系统默认的主题样式,下面说一些常用的主题样式,个人觉得能看看官方的api还是最好的android:theme="@android:style/Theme.Dialog" : Activity显示为对话框模式android:theme="@android:style/Theme.NoTitleBar" : 不显示应用程序标题栏android:t原创 2015-09-14 10:43:41 · 1178 阅读 · 0 评论 -
Android动画——属性动画
继续上一章,本章说下Tween Animation。Twen Animation相对简单,它可以支持简单的缩放、平移、旋转、透明度渐变的动画。补间动画与逐帧动画的不同之处就在于,补间动画只需要指定动画的开始、结束“关键帧”,而动画变化的的“中间帧”由系统计算、并补齐,包括四个子类:AlphaAnimation:透明度改变的动画,创建时需要制定动画开始时的透明度、结束时的透明度和动画持续原创 2016-09-28 10:57:33 · 734 阅读 · 1 评论 -
RecyclerView与SwipeRefreshLayout的完美搭配
SwipeRefreshLayout 是谷歌公司推出的用于下拉刷新的控件,在Version 19.1之后SwipeRefreshLayout 被放到support v4中。我们在前面也已经说过一个SwipeRefreshLayout和ListView实现上拉加载、下拉刷新的例子。而现在RecyclerView也已作为实现列表功能的首选组件,而它本身并没有实现上拉加载、下拉刷新的功能,本节我们就来利原创 2016-09-14 14:38:59 · 11162 阅读 · 3 评论 -
PullToRefresh和SwipeRefreshLayout的使用
PullToRefresh是一套实现非常好的下拉刷新库(下载地址:https://github.com/chrisbanes/Android-PullToRefresh),它支持:1.ListView2.ExpandableListView3.GridView4.WebView5.ScrollView6.Horizontal ScrollView7.ViewPag...原创 2016-09-12 16:20:18 · 3305 阅读 · 0 评论 -
Fragment进阶2——使用FragmentTabhost代替Tabhost
Fragment是Android 3.0 引入的新API,他使开发的效率更加高效,因为Tabhost已经不推荐使用了,现在android推荐使用FragmentTabhost,下面简单给个例子,相当于一个抛砖引玉的作用吧系统大致结构:一共四个选项卡,点击不同的选项卡切换到不同的fragment,在第一个fragment界面,我用ViewPager实现了一个图片轮播的功能,在第二个f原创 2016-04-14 14:56:34 · 4938 阅读 · 0 评论 -
Retrofit2.0使用详解
Retrofit是一个不错的网络请求库,官方的介绍就是“Type-safe HTTP client for Android and Java by Square, Inc.”1、通过配置gradle将Retrofit框架引入项目:compile 'com.squareup.retrofit2:(insert latest version)'注意:Retrofit 要原创 2016-09-22 21:14:51 · 998 阅读 · 0 评论 -
GreenDAO简介
Android本身自带的SQLite,大家一定都用过,然而在使用它时,我们往往需要做许多额外的工作,像编写 SQL 语句与解析查询结果等。所以,适用于 Android 的ORM 框架也就孕育而生了,现在市面上主流的框架有 OrmLite、SugarORM、Active Android、Realm 与 GreenDAO。简单的讲,greenDAO 是一个将对象映射到 SQLite 数据库中的原创 2016-08-24 13:47:25 · 2186 阅读 · 0 评论 -
CoordinatorLayout解析
CoordinatorLayout作为“super-powered FrameLayout”基本实现两个功能: 1、作为顶层布局 2、调度协调子布局CoordinatorLayout使用新的思路通过协调调度子布局的形式实现触摸影响布局的形式产生动画效果。CoordinatorLayout使用的时候通常和AppBarLayout搭配使用。在AppBarLayout里面的V原创 2016-08-21 20:12:56 · 1480 阅读 · 0 评论 -
RecyclerView添加HeaderView和FooterView
前面已经说过RecyclerView的使用,RecyclerView通过其高度的可定制性深受大家的青睐,也有非常多的使用者开始对它进行封装或者改造,从而满足越来越多的需求,相信用过的一定会爱不释手。在实际开发中经常会遇到给列表添加标题这样的需求,可是要给RecyclerView加个headerView或者footerView却发现没有这样的方法,怎么办呢?网上搜到的大多数方案都是通过控制A原创 2016-09-01 14:06:23 · 5005 阅读 · 0 评论 -
MPAndroidChart 教程:与图表的交互 Interaction with the Chart
该库允许您完全自定义与图表视图的可能触摸(和手势)交互,并通过回调方法对交互作出反应。启用/禁用交互setTouchEnabled(boolean enabled):启用/禁用与图表的所有可能的触摸交互。 setDragEnabled(boolean enabled):启用/禁用图表的拖动(平移)。 setScaleEnabled(boolean enabled):启用/禁用缩放图表上...翻译 2018-11-04 17:57:32 · 2451 阅读 · 0 评论 -
MPAndroidChart 教程:突出显示值 Highlighting Values
本节主题是重点介绍通过tap-gesture和基于发行版v3.0.0以编程方式突出显示图表中条目。启用/禁用突出显示setHighlightPerDragEnabled(boolean enabled):在Chart 上将此设置为true,以便在完全缩小时在图表表面上进行每次拖动时突出显示,默认值:true setHighlightPerTapEnabled(boolean enable...翻译 2018-11-04 18:17:04 · 8569 阅读 · 2 评论 -
MPAndroidChart 教程:坐标轴 The Axis (AxisBase)
本节重点是AxisBase类,它是XAxis(X轴)和YAxis(Y轴)两者的基类,在v2.0.0中引入。以下提到的方法可以应用于两个轴。轴类允许特定样式并包含(可以包含)以下组件/部件:标签(以垂直(y轴)或水平(x轴)对齐绘制),包含轴描述值 所谓的“轴线”,直接绘制在标签旁边并与之平行 “网格线”,每个都来自水平方向的轴标签 LimitLines,允许提供特殊信息,如边界或...翻译 2018-11-04 19:06:08 · 4152 阅读 · 0 评论 -
MPAndroidChart 教程:X轴 XAxis
XAxis是AxisBase的子类,它继承了许多样式和方便方法。XAxis类(在2.0.0 之前的版本中叫作XLabels),是用于一切有关水平轴的数据和信息的容器。每个Line-,Bar-,Scatter-,CandleStick-和RadarChart都有一个XAxis对象。XAxis类允许特定样式,并包含(可以包含)以下组件/部件:所谓的“axis-line”,直接绘制在标签旁边...翻译 2018-11-04 19:09:17 · 7293 阅读 · 6 评论 -
MPAndroidChart 教程:Y轴 YAxis
YAxis是AxisBase的子类。YAxis类(在早于2.0.0 版本中叫做YLabels)是数据和一切与垂直轴相关的信息容器。每个Line-,Bar-,Scatter或CandleStickChart都有一个左右YAxis对象,分别负责左轴或右轴。RadarChart只有一个YAxis。默认情况下,图表的两个轴都已启用并将被绘制。为了获得一个实例中的YAxis类,请调用以下方法之一:...翻译 2018-11-04 19:13:48 · 7044 阅读 · 0 评论 -
MPAndroidChart 教程:设置数据 Setting Data
本章主题是介绍为各种图表设置数据线型图如果要将值(数据)添加到图表中,则必须通过public void setData(ChartData data) { ... }基类ChartData(ChartData)类封装了呈现期间图表所需的所有数据和信息。对于每种类型的图表,存在应该用于设置图表数据的不同子类ChartData(例如LineData)。在构造函数中,您可以将一个List...翻译 2018-11-04 20:08:27 · 2083 阅读 · 0 评论 -
DrawerLayout侧滑详解
前面我们说了自定义侧滑菜单,也说了SlidingMenu的使用,这一节我们再来说下DrawerLayout。DrawerLayout是Support Library包中实现了侧滑菜单效果的控件,可以说DrawerLayout是因为第三方控件如SlidingMenu等出现之后,google借鉴而出现的产物。DrawerLayout分为侧边菜单和主内容区两部分,侧边菜单可以根据手势展开与隐藏(draw原创 2016-11-08 15:56:41 · 13301 阅读 · 0 评论 -
Android动画——补间动画
1、概述Android 平台有一套完整的动画框架,在Android3.0之前有两种动画,一种方式是补间动画 Tween Animation、另一种叫逐帧动画 Frame Animation(也称Drawable Animation )。这两种被归类为View Animation。 Android3.0以后增加了属性动画 Property Animation,这样子动画就分成两部分:原创 2016-09-27 13:22:01 · 527 阅读 · 0 评论 -
Fragment初学5——使用Fragment的子类PreferenceFragment
在Android的应用中通常都有setting功能,能够设置一些全局的选项,例如字体颜色,个人喜好等等。这些东西都存在一个xml中,在android中对应的对象就是SharedPreferences。在android3.0之前,我们一般继承PreferenceActivity这个基类去实现相关的方法。在3.0之后的系统中当然选择使用PreferenceFragment了,原因是Preference原创 2016-01-05 21:30:01 · 845 阅读 · 0 评论 -
Fragment初学4——使用Fragment的子类ListFragment
本节介绍一个ListFragment的例子,MainActivity左边显示一个ListFragment,右边是一个FrameLayout容器,该FrameLayout容器将会动态更新其中的FragmentMainActivity布局文件如下:http://schemas.android.com/apk/res/android" android:lay原创 2016-01-03 21:39:43 · 950 阅读 · 0 评论 -
Fragment初学3——使用Fragment的子类DialogFragment
承接上一节,本节说一下Fragment的子类,继承关系如下图Fragment有四个子类,就按顺序来吧,因为篇幅太长,我就一篇说一个DialogFragment,顾名思义,就是用Fragment方式实现Dialog的效果,使用DialogFragment至少需要实现onCreateView或者onCreateDialog方法。onCreateView即使用定义的 xml布原创 2016-01-02 19:51:43 · 1101 阅读 · 0 评论 -
Fragment初学2——使用Fragment
一般创建Fragment需要实现如下三个方法。onCreate():系统创建Fragment对象后回调该方法,实现代码中只初始化Fragment中的组件。onCreateView(): 当Fragment绘制界面组件时回调该方法,该方法返回的view就是该Fragment所显示的View。onPause(): 当用户离开该Fragment时回调该方法。好了,开始使用吧,最简单的用法原创 2015-10-23 15:14:49 · 659 阅读 · 0 评论 -
Fragment初学8——Fragment在Android开发中的应用2
Fragment都是依附于Activity的,通信方式大致也分为如下几种:如果Activity中包含自己管理的Fragment的引用,可以通过直接引用访问所有的Fragment的public方法 如果Activity中未保存任何Fragment的引用,那么可以通过 getFragmentManager.findFragmentByTag()或者findFragmentById()获得任何F原创 2016-02-26 08:46:00 · 789 阅读 · 0 评论 -
在安卓开发中实现退出App时销毁所有Activity
我做Android开发时,经常遇到退出应用就会提示应用停止运行,很明显这是有bug,查阅了网上的相关资料,发现finish()、System.exit(0)、android.os.Process.killProcess(android.os.Process.myPid())只能销毁当前的activity,并不能销毁所有的activity,为了实现退出时便销毁所有的Activity,写了下面一个方法原创 2015-08-05 09:27:52 · 7760 阅读 · 2 评论 -
Fragment初学7——Fragment在Android开发中的应用1
Fragment的常用功能通过getFragmentManager()方法,可以得到FragmentManager对象,主要完成下面的功能 FragmentManager manager = getFragmentManager(); (1).得到已经存在Fragment对象如果该fragment在布局文件中指定了id,通过findFragmentById()得到对象,或者指定原创 2016-01-08 16:05:50 · 555 阅读 · 0 评论 -
android实现弹出式对话框方法分析
利用Dialog,PopupWindow都可以实现对话框的功能。Dialog实现比较方便,可以用系统自带的样式,也可以自定义一下,这里就不说了,不明白的可以看一下这篇()但是它显示位置比较固定,有时不能满足我们的需求。PopupWindow可以通过showAtLocation设置显示位置,也可以通过ShowAsDropDown以下拉方式显示在某个View的相对位置上,基本能原创 2015-09-14 15:18:05 · 1132 阅读 · 0 评论 -
利用WIFI(不用数据线)连接Android手机进行调试
我们在进行Android开发时,一般都习惯用真机进行调试,但数据线经常插拔不仅不方便,而且容易造成插口损坏,我就换了好几根线了。网上找了半天,发现其实可以用连接WIFI的方式连接android手机进行调试,这样就方便多了。好了,废话不说了,切入正题。首先,手机连上WiFi,同时要保证和电脑在同一网段。然后在调试机上安装(AdbWireless)(各个应用商店应该都有,我是在360手机助手上搜的)...原创 2015-07-22 20:47:21 · 2724 阅读 · 0 评论 -
Drawable解析1——ColorDrawable、BitmapDrawable、ClipDrawabl和ScaleDrawable
Drawable资源是Android应用中使用最广泛的资源,它不仅可以使用各种格式的图片资源,也可以使用多种xml文件资源。当然直接使用图片资源没什么好说的,我们主要是要研究下Drawable的子类。Android把可绘制的对象抽象成Drawable,并且提供了draw方法,可以在需要的时候直接绘制到画布上,我们看下官方的API1、有点多,我们就慢慢说吧,先从最简单的一个说起—原创 2016-05-10 21:44:52 · 7330 阅读 · 0 评论 -
Drawable解析2——GradientDrawable、ShapeDrawable、InsetDrawable和RotateDrawable
继承上一节,这一节再说两个子类1、GradientDrawable表示一个渐变区域,可以实现线性渐变、发散渐变、和平铺渐变。GradientDrawable使用shape作为根节点创建xml文件,文档节点结构如下:xmlns:android="http://schemas.android.com/apk/res/android"> //定义区域的大小 //设原创 2016-05-12 13:23:15 · 1679 阅读 · 0 评论 -
Drawable解析3——LayerDrawable、TransitionDrawable、NinePatchDrawable和LevelListDrawabl
1、前两节我们已经说了8个Drawable了,本节继续,第一个,LayerDrawable,表示层图形对象。LayerDrawable用于管理一组drawable,每个drawable处于不同的层,当绘制时会按照顺序将其全部绘制到画布上。虽然这些Drawable会有交叉或者重叠的区域,但他们位于不同的层,所以并不会相互影响,在xml文件中以layer-list作为根节点进行定义,并通过item子节原创 2016-05-18 16:55:14 · 838 阅读 · 0 评论 -
Drawable解析4——StateListDrawable和AnimationDrawable
1、估计StateListDrawable是大家用的最多一个drawable了,所有的控件背景基本上都使用了StateListDrawable,以实现其在不同状态下显示不同的效果,例如按钮的按下、选中、默认、禁用等多种模式状态。StateListDrawable用于管理一组drawable,每个drawable都对应一组状态,状态的选择类似于java中的switch-case组合,按照顺序比较状态原创 2016-05-18 22:12:00 · 1363 阅读 · 0 评论 -
关于Drawable资源加载的相关问题
图片资源无外乎两种,一种是图片文件格式,一种是xml格式,在布局文件中引用当然没什么可说的,我们主要说下在代码中如何获得drawable资源1、res/drawable目录下资源加载使用R.drawable.xxx直接获得Drawable资源Resources res=getResources(); //获得应用资源管理实例Drawable d原创 2016-05-19 15:00:00 · 2943 阅读 · 0 评论 -
Fragment初学1——Fragment简介
Fragment是Android 3.0 引入的新API。Fragment代表了Activity的子模块,因此可以理解为Activity的片段。Fragment的初衷是为了适应大屏幕的平板电脑,由于大屏幕的平板电脑屏幕比较大,因此可以容纳更多的UI组件,而Fragment简化了大屏幕UI设计,它不需要开发者管理组件包含关系的复杂变化,开发者使用Fragment对UI组件进行分组、模块化管理,可以更原创 2015-09-23 10:55:38 · 583 阅读 · 0 评论 -
Android动画——逐帧动画
1、概述Android提供了几种动画类型:View Animation 、Drawable Animation 、Property Animation 。View Animation相当简单,可以支持简单的缩放、平移、旋转、透明度基本的动画。Drawable Animation分为逐帧动画和补间动画。Property Animation的功能可以说是最强大的(从某种角度看,属性动画是补间动画的原创 2016-08-30 13:27:48 · 3581 阅读 · 0 评论 -
MPAndroidChart 教程:设置颜色 Setting Colors
从v1.4.0版本开始,不再需要(不建议使用)在先前版本中负责设置颜色的ColorTemplate对象。然而,它仍然保留所有预定义的颜色数组(例如,ColorTemplate.VORDIPLOM_COLORS并提供方便的方法,用于将颜色从资源(资源整数)转换为“真实”颜色。现在可以通过DataSet对象直接指定颜色而不是通过ColorTemplate,这允许为每个DataSet单独设置样式。...翻译 2018-11-04 22:28:13 · 2972 阅读 · 1 评论