- 博客(34)
- 资源 (59)
- 问答 (1)
- 收藏
- 关注
原创 Android实战简易教程-第二十一枪(GridView动态添加Item)
本例子实现在GridView的最后显示一个增加图片,点击图片动态增加内容item。1.main.xml:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_wid
2015-06-24 12:53:51 9448 3
原创 Android实战简易教程-第二十枪(GridView长按显示删除)
用过UC浏览器的都使用过如下功能:长按图标会弹出删除的图标,我们下面研究一下如何实现类似效果。1.配置main.xml文件:<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" androi
2015-06-23 20:51:17 2097 2
原创 Android开发技巧四--圆角化控件,让它看起来更美
当需要为应用程序UI控件选择背景的时候,开发者会添加自定义的颜色和形状来代替系统的默认样式,圆角边框看起来是很不错的效果,开发者只需要添加几行代码,就可以在应用程序中使用这种效果。下面我们做一个例子看一看,新建一个main.xml代码:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns
2015-06-19 09:38:00 2537
原创 Android 找不到资源文件错误的解决办法
有些时候我们明明在layout文件夹下面配置了布局文件,但是在activity中却报错,提示找不到该文件。解决办法:这是因为你导入的R包不对,将activity文件import中后缀为.R的一行删除,重新导入一个其他.R的包,这时就可以找到该布局文件了。
2015-06-18 17:49:30 6077
原创 Android clean后出现很多错误解决办法
当我们从别的项目中拷入一个布局文件进我们的项目时,可能出现在activity中无法找到控件的情况,这时如果你clean了一下项目,就会出现很多报错,这是由于在项目有错误的情况下clean会自动删除gen目录下的R.java。解决办法:只需要将刚刚引入的布局文件删除即可,这也告诫我们不要在项目有错误的情况下盲目使用clean.
2015-06-18 17:06:27 3042
原创 Android实战简易教程-第十九枪(SwipeRefreshLayout下拉刷新使用实例)
我们来看SwipeRefreshLayout的具体用法,顾名思义此组件就是一个布局,只不过要注意的是此布局内只能有一个直接子View。其实通过文档我们可以知道SwipeRefreshLayout只不过是继承了ViewGroup。 查看文档,我们可以知道,在SwipRefreshLayout中存在一个接口,通过此接口我们可以监听滑动手势,其实使用此组件最重要的步骤就是实现此接口的onRefresh方
2015-06-17 13:17:53 1724
原创 Android开发技巧三--格式化TextView文本
本例主要研究一下如何在TextView中显示网页链接和改变特定文字颜色1.main.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match
2015-06-16 17:39:59 3746
原创 Android开发技巧二--避免在EditText中验证日期
开发者都知道验证表单里的数据是令人厌烦而且容易出错的,日期输入框的验证也是如此。我们可以开发出一个外观看起来与EditText相同Button,点击该Button后,会显示一个DatePicker控件。要实现上面的想法,需要将Button控件的默认背景改成EditText的背景。看一下main.xml:<LinearLayout xmlns:android="http://schemas.andr
2015-06-16 16:48:51 1714
原创 Android实战简易教程-第十八枪(ViewPager组件详解)
对于ViewPager组件我们知道: 1)ViewPager类直接继承了ViewGroup类,所有它是一个容器类,可以在其中添加其他的view类。 2)ViewPager类需要一个PagerAdapter适配器类给它提供数据。 3)ViewPager经常和Fragment一起使用,并且提供了专门的FragmentPagerAdapter和FragmentStatePagerAdapter类供
2015-06-15 14:14:11 1320
原创 Android实战简易教程-第十七枪(LayoutAnimation布局动画)
我们对Tween和Frame动画比较熟悉,下面我们通过一个实例来了解一下LayoutAnimation(布局动画)首先我们要建立一个动画文件zoom_in.xml: <scale android:duration="1000" android:fromXScale="0.1" android:fromYScale="0.1"
2015-06-14 08:50:40 1343
原创 Android开发技巧一--weight属性实现视图的居中(半)显示
面试时,一位面试官问到:“如果我想讲按钮居中显示,并且占据其父视图宽度的一半,应该怎么做到呢?”即实现这种效果:我们使用weightSum属性和layout_weight属性实现这一要求:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill
2015-06-13 20:48:50 2108 3
原创 Android实战简易教程-第十六枪(LineChart实现数据趋势展示)
aChartEngine中的line Chart是线图,是数据显示的一种。首先我们要下载aChartEngine的jar包,然后导入到工程中。直接看一下代码(部分注释):package com.yayun.linechart;import java.util.ArrayList;import java.util.List;import org.achartengine.ChartFact
2015-06-13 15:07:51 2209
原创 Android实战简易教程-第十五枪(实现ListView中Button点击事件监听)
1.main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_hei
2015-06-12 15:12:35 2070 1
原创 Android实战简易教程-第十四枪(介绍SwipeMenuListView-简单实现类似QQ的滑动删除效果)
1.实现布局文件main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layo
2015-06-12 09:54:09 2573 3
原创 Android实战简易教程-第十三枪(五大布局研究)
我们知道Android系统应用程序一般是由多个Activity组成,而这些Activity以视图的形式展现在我们面前, 视图都是由一个一个的组件构成的。组件就是我们常见的Button、TextEdit等等。那么我们平时看到的Android手机中那些漂亮的界面是怎么显示出来的呢?这就要用到Android的布局管理器了,网上有人比喻的很好:布局好比是建筑里的框架,组件按照布局的要求依次排列,就组成
2015-06-11 20:27:42 2065
转载 Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)
在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等。下面就来说说经常会使用到通知机制中的通知栏框架(Notificaiton),它适用于交互事件的通知。它是位于顶层可以展开的通知列表。它会时不时的提醒你什么软件该更新了,什么人发你微信消息了等。
2015-06-10 14:56:45 1379
原创 Android实战简易教程-第十二枪(ViewFlipper实现幻灯效果)
直接看代码1.MainActivity.java:package org.yayun.demo;import android.app.Activity;import android.os.Bundle;import android.view.GestureDetector;import android.view.MotionEvent;import android.
2015-06-09 10:14:41 2311
转载 android之startActivityForResult的使用
在Android中startActivityForResult主要作用就是:A-Activity需要在B-Activtiy中执行一些数据操作,而B-Activity又要将,执行操作数据的结果返回给A-Activtiy//看效果//看代码[java] view plaincopypackage jason.act
2015-06-08 09:21:42 1458
转载 android之layout布局和ListView中的一些属性介绍
一.android:singleLine设置单行显示。如果和layout_width一起使用,当文本不能全部显示时,后面用“…”来表示。如[html] view plaincopyprint?android:text="test_ singleLine " android:singleLine="true" android
2015-06-08 09:16:10 1348
转载 android之java程序性能优化(不断补充)
在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地提升程序性能。一、避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快。还有一个原则,决不在一个For语句中第二次调用一个类的方法 例子:[java]
2015-06-08 09:07:53 1082 1
原创 Intent传递对象——Serializable和Parcelable区别
前两篇文章讨论了Serializable和Parcelable实现Intent之间传递对象和对象数组的方式,两种方法实现上相似,效果一致,怎么选择用哪种方法实现呢?Intent在不同的组件中传递对象数据的应用非常普遍。下面介绍两种通过Intent传递对象的方法。1、实现Serializable接口2、实现Parcelable接口 为什么要将对象序列化? 1、永久性保存对象,
2015-06-07 10:22:33 1997
原创 Intent之对象传递(Parcelable传递对象和对象集合)
接着上一篇文章,下面我们讨论一下如何利用Parcelable实现Intent之间对象的传递一、实现对象传递首先创建User.java实现Parcelable接口:package org.yayun.demo;import java.io.Serializable;import android.R.integer;import android.os.Parcel;
2015-06-07 09:40:58 9265
原创 Intent之对象传递(Serializable传递对象和对象集合)
Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象。要求被传递的对象必须实现上述2种接口中的一种才能通过Intent直接传递。Intent中传递这2种对象的方法:Bundle.putSerializable(Key,Object); //实现Serializable接口的对象
2015-06-07 07:52:36 18843 3
原创 Android实战简易教程-第十一枪(树形组件:ExpandableListView显示和动态添加删除)
ListView组件可以为用户提供列表的显示功能,但是如果想对这些列表数据进行分组管理,则需要使用android.widget.ExpandableListView组件完成。与ListView组件一样,如果想要进行数据显示的设置,也需要一个适配器类,但是此时不再继承之前的BaseAdapter,而是继承BaseExpandableListAdapter类完成,此类为抽象类,所以要实现其中的所有
2015-06-06 14:47:43 4661 2
原创 Android--taskAffinity属性
Activity的归属,也就是Activity应该在哪个Task中,Activity与Task的吸附关系。我们知道,一般情况下在同一个应用中,启动的Activity都在同一个Task中,它们在该Task中度过自己的生命周期,这些Activity是从一而终的好榜样。 那么为什么我们创建的Activity会进入这个Task中?它们会转到其它的Task中吗?如果转到其它的Task中,它们
2015-06-06 14:26:28 2062 3
原创 Android实战简易教程-第十枪(画廊组件Gallery实用研究)
Gallery组件用于拖拽浏览图片,下面我们就来看一下如何实现。一、实现Gallery1.布局文件很简单:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/MyLayout" android:layout_width="match_p
2015-06-05 15:23:22 1544 2
原创 Android实战简易教程-第九枪(BitmapFactory.Options对资源图片进行缩放)
我们知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常。因此在展示高分辨率图片的时候,最好先将图片进行压缩,压缩后的图片大小应该和用来展示它的控件大小相近,这样可以兼顾显示效果和内存占用。BitmapFactory.Options这个类,有一个字段叫做 inJustDecodeBounds 。SDK中对这个成员的说明是这样的:I
2015-06-05 08:04:51 2941 1
原创 Android实战简易教程-第八枪(ImageSwitcher用法实例)
ImageSwitcher 组件的主要功能是完成图片的切换显示,例如用户在进行图片浏览时,可以通过单击按钮逐张切换显示的图片,在进行切换时还可以加入一些动画效果。如果想进行实现图片的切换功能,则定义的Activity类还必须实现ViewSwitcher.ViewFactory接口,以指定切换视图的操作工厂,此接口定义如下:android.widget接口 ViewSwitcher.Vi
2015-06-04 10:16:37 3187
原创 Java回调机制研究
1. 什么是回调函数回调函数,顾名思义,用于回调的函数。回调函数只是一个功能片段,由用户按照回调函数调用约定来实现的一个函数。回调函数是一个工作流的一部分,由工作流来决定函数的调用(回调)时机。回调函数包含下面几个特性: (1)属于工作流的一个部分; (2)必须按照工作流指定的调用约定来申明(定义); (3)他的调用时机由工作流决定,回调函数的实现者不能直接调用回调函数来
2015-06-04 09:25:23 1882 2
原创 Android实战简易教程-第七枪(Activity的启动模式)
在介绍四种启动模式之前,先介绍一下Task栈的相关知识,task是一个具有栈结构的容器,可以放置多个Activity实例。启动一个应用,系统就会为之创建一个task,来放置根Activity;默认情况下,一个Activity启动另一个Activity时,两个Activity是放置在同一个task中的,后者被压入前者所在的task栈,当用户按下后退键,后者从task被弹出,前者又显示在幕前,特别
2015-06-03 10:17:17 1585 3
原创 Android中Task任务栈的分配
首先我们来看下Task的定义,Google是这样定义Task的:a task is what the user experiences as an "application." It's a group of related activities, arranged in a stack. A task is a stack of activities, not a class or an e
2015-06-03 09:13:55 2422 5
转载 Andorid-15k+的面试题。
andorid开发也做了3年有余了,也面试很多加企业,借此机会分享一下,我们中遇到过的问题以及解决方案吧,希望能够对正在找工作的andoird程序员有一定的帮助。特别献上整理过的50道面试题目1.listView的优化方式重用convertViewviewHolderstatic class viewHolder
2015-06-02 16:48:50 5291 8
原创 Android项目实战-云词典
前段时间在网上看到了一篇滴答词典的项目文章,实现简单的单词查找、整句翻译和生词本功能,但是该项目年代久远,所用的API已不再提供数据,我决定利用它的已有框架实现其功能,主要用到的技术有GSON和Volley以及SQLite相关的CRUD技术。非常适合有一定基础的初学者学习,有一些BUG,界面也比较丑陋,可以自行完善。下面看几个截图:1.单词查询界面:2.整句翻译界面:3.生
2015-06-02 16:23:56 1925 1
原创 Android实战简易教程-第六枪(各种对话框Dialog用法研究大全)
在图形界面中,对话框也是人机交互的一种重要形式,程序可以通过对话框进行一些信息的提示,而用户也可以通过对话框和程序进行一些简单的交互操作。在Android中,所有的对话框都是从android.app.Dialog类继承而来的,此类的继承结构如下:java.lang.Object android.app.Dialog可以发现此类直接继承自Object类,与View类没有任何继承关
2015-06-01 11:30:54 1513
android上拉加载,下拉刷新listview
2015-09-05
ripple-effect android eclipse 为控件增加涟漪效果
2015-08-23
android-短信验证码截取自动填入源码
2015-08-16
android 截取短信验证码自动输入Demo
2015-08-16
Android二维码扫描识别-二维码生成实例demo
2015-08-14
Android源码--基于Baas上拉加载、下拉刷新
2015-07-23
Android 百战经典-Android补间动画(Tween)大观园
2016-03-20
android 仿iOS弹出框效果demo
2015-10-29
android 邮箱验证EditText DEMO源码
2015-10-29
Android引导页Demo(第一次进入应用时加载)
2015-10-10
Android 圆形ImageView 源码Demo
2015-09-21
ListView 子控件单击事件混乱
2015-06-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人