- 博客(50)
- 资源 (5)
- 收藏
- 关注
原创 android4.0 Launcher仿三星平板workspace页面编辑(即页面增减)
本文主要讲android4.0 Launcher添加页面编辑功能,样式同三星的平板。一、已实现功能: 1、页面增减(最多8个页面、拖动删除、最后一个添加页面、有内容的页面不可删除)2、自由拖动交换位置3、页面位置布局(完全仿三星位置布局)、目前是固定大小的。。。为什么要仿它,纠结布局图:二、开始思路1、自定义一个view,实现添加、自由拖动、删除等功能
2013-04-23 10:12:10 3871 6
原创 菜鸟android4.0 Settings分析(二) 界面修改
项目需要修改4.0的settings,先写点界面修改部分的实现吧一、上面的分页tabandroid3.0以后就加入了ActionBar,上面的那条是一个ActionBar,不熟悉的可以先去看看ActionBar的介绍在Settings.java的onCreate()方法中添加,代码如下:ActionBar ab = getActionBar();
2013-03-12 12:11:54 7742 13
原创 菜鸟Android4.0 Settings分析(一)
先声明:本人工作半年,是真的菜鸟,之前有做过2.3的Launcher,没有记录下来,感觉挺可惜的,现在老大叫我搞Setting,我觉得是得写得东西,记录下自己的工作。设备都还没到,现在只能看看代码,就先记录下看代码的收获吧。。注意:Fragment是android3.0以上才支持的,3.0之前得导jar包,我在找Setting里面ListView的item的click事件时找了好久,因
2013-01-17 17:44:19 12158 17
原创 关于局部更新listview的问题(只更新某个item)
public void updateView(int itemIndex) { //得到第一个可显示控件的位置, int visiblePosition = mListView.getFirstVisiblePosition(); //只有当要更新的view在可见的位置时才更新,不可见时,跳过不更新 if (itemIndex - visiblePosition >= 0) {
2012-07-27 17:11:28 42987 17
转载 iOS学习系列 - 扩展机制category与associative
category与associative作为objective-c的扩展机制的两个特性,category即类型,可以通过它来扩展方法;associative,可以通过它来扩展属性;在iOS开发中,可能category比较常见,相对的associative,就用的比较少,要用它必须使用的头文件,然后就可以自由使用objc_getAssociatedObject以及objc_setAssociated
2013-08-15 17:10:41 1050
原创 IOS学习:在一个UIViewController中实现侧边菜单的思路及demo
实现思路:在ViewController的view里面放一个UIScrollView,将UIScrollView的contentSize的宽度设置成屏幕宽度加上侧边菜单的宽度,点击显示菜单的按钮时滑动UIScrollView到指定的位置即可。(不放到UIScrollView里面的话,主视图在菜单出现的时候没有向左的推动效果,是不动的,所以要放到UIScrollView中)
2013-08-14 09:18:03 6617 2
原创 IOS开发学习:MKMapView自定义CalloutView
自定义的过程这篇博客写的很详细:http://blog.csdn.net/mad1989/article/details/8794762标记一个位置点的view ----》marker或者pin点击marker后弹出的view ---》CalloutViewmarker和calloutView都是一个annotation,一个annotation对应一个view即m
2013-07-15 14:03:47 6502 1
原创 IOS学习:AVAudioPlayer播放音乐文件及读取ipod库中的音乐文件
首先要导入AVFoundation框架及#import 头文件注意:要在真机上调试下面是ipad上的调试效果下面是代码,代码中都有注释://// RootViewController.h// SoundDemo//// Created by on 13-6-21.// Copyright (c) 2013年 Double
2013-06-24 16:41:27 10598 2
原创 IOS学习:用UIWindow自定义AlertView(最基本代码)
//// ABCustomAlertView.h// KnowledgeChoice//// Created by on 13-6-19.// Copyright (c) 2013年 DoubleMan. All rights reserved.// 自定义相应的控件及代理就可以用了。。#import @interface ABCustomAlertView : U
2013-06-20 09:58:26 17338 1
原创 IOS学习:调试程序(断点:异常断点)
一、异常断点说明在代码有问题导致抛出异常时,异常断点会停止程序的执行,如Foundation.framework的NSArray、NSDictionary等中的一些方法会在不能满足特定条件的情况下抛出异常,e.g:数组越界。一般如果没有设置异常断点,应用崩溃时,可能只会显示造成崩溃的那条异常,即使看了日志也不知道究竟发生什么了。设置异常断点后,调试器会在异常抛出的瞬间暂停程序的执行,将程序定位
2013-06-07 11:44:12 9662 1
原创 IOS学习:在工程中添加百度地图SDK
在工程中导入sdk相关文件及工程设置 官方文档地址:http://developer.baidu.com/map/sdkiosdev-2.htm 1、将下载下来的sdk中的inc文件夹、mapapi.bundle、libbaidumapapi.a添加到工程中,其中libbaiduapi.a有两个,一个对应模拟器一个对应真机,导入方法如下:第一种方式:
2013-06-04 16:27:30 9146
原创 IOS学习:基本控件(UITableView)
一、UITableViewDataSource的方法// 必须要实现的方法@required// UITableView可以存在多个组,这个方法返回指定组(section)中有多少条记录- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;// 这
2013-05-30 18:00:39 4543
翻译 IOS学习:在IOS开发中使用GoogleMaps SDK
官方文档地址:https://developers.google.com/maps/documentation/ios/start#getting_the_google_maps_sdk_for_ios一、申请一个免费的API KEY要使用GoogleMaps SDK,必须要为你的应用申请一个API KEY,API Key可以让你监视你的应用调用api的情况。api key是免费的
2013-05-30 16:01:52 10494 1
原创 IOS学习:ios中的数据持久化初级(文件、xml、json、sqlite、CoreData)
一、文件操作 1、因为应用是在沙盒(Sandbox)中的,在文件读写权限上受到限制,只能在几个目录下读写文件: * Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录 * tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除 * Library/
2013-05-30 10:03:56 8378 2
原创 IOS学习:常用第三方库(GDataXMLNode:xml解析库)
一、GDataXMLNode说明GDataXMLNode是Google提供的用于XML数据处理的类集。该类集对libxml2--DOM处理方式进行了封装,能对较小或中等的xml文档进行读写操作且支持XPath语法。使用方法: 1、获取GDataXMLNode.h/m文件,将GDataXMLNode.h/m文件添加到工程中 2、向工程中增加“libxm
2013-05-30 09:45:20 28290
原创 IOS学习:隐藏键盘方法
1、点击界面的其它空白地方隐藏 由于UIViewController是继承自UIResponder的,所以可以覆写- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;这个开始触摸的方法来取消第一响应者,代码如下:// 点击编辑框外面时,隐藏键盘- (void)touchesBegan:(NS
2013-05-30 09:41:41 5845
原创 IOS学习:UIView小记
1、drawRect方法中的画图 - (void)drawRect:(CGRect)rect{ CGContextRef context = UIGraphicsGetCurrentContext(); // 清空屏幕 CGContextClearRect(context, rect); // 画底图 [self.imagedrawIn
2013-05-30 09:39:05 3081
原创 IOS学习:常用第三方库(ASIHttpRequest)
ASIHttpRequest是一个对CFNetwork API进行了封装,并且使用起来非常简单的一套http请求api。官方地址:http://allseeing-i.com/ASIHTTPRequest/依赖库:CFNetwork.framework、SystemConfiguration.framework、MobileCoreServices.framework、Co
2013-05-25 16:29:30 5219 1
原创 IOS学习:全屏幕显示
使ios应用全屏有两种方法:1、修改plist文件 在程序的***-info.plist文件中添加一个Status Bar is initially hidden"并选中2、在AppDelegate.m中调用 [ [UIApplication sharedApplication] setStatusBarHidden:YES];
2013-05-25 16:06:18 6821
原创 IOS学习:基本控件(UIScrollView)
滑动控件,可以左右及上下滑动、代码中有几个常用属性的解释一、基本使用示例代码:- (void)viewDidLoad{ [superviewDidLoad]; self.view.backgroundColor = [UIColororangeColor]; self.scrollView = [[[UIScrollViewalloc] initWithF
2013-05-14 23:32:41 1348
原创 IOS学习:基本控件(UIPickerView)
一 、UIPickerView是一个选择器件,外形如下: 二、UIPickerView代理:UIPickerViewDataSource、UIPickerViewDelegate 几个常用的代理方法如下:// returns the number of 'columns' to display.// 返回总共的列数- (NSInteger)numberO
2013-05-14 23:19:32 1753
原创 在android settings.db数据库中添加一项新的设置
Settings数据存放在com.android.providers.settings/databases/settings.db 中数据库中数据的默认数据在frameworks/base/packages/SettingsProvider/res/values/defaults.xml中定义,如果要在数据库中添加一个新的字段,则可用如下步骤:1、在defaults.xml中为新加的数
2013-03-25 16:39:38 7555
原创 object-c学习笔记:Foundation框架常用类(二)
四、NSDictionary和NSMutableDictionary类//____________________NSDictionary_________________ // 创建字典 NSNumber *number = [NSNumber numberWithInt:100]; // 初始化一个元素 NSDicti
2013-03-19 23:31:57 1927
原创 object-c学习笔记:Foundation框架常用类(一)
一、NSNumber类 主要是用来将基本数据类型封装为对象//创建NSNumber对象 NSNumber *monthNumber = [NSNumber numberWithInt:03]; NSNumber *lengthNumber = [NSNumber numberWithFloat:10.9]; NSLog(@"monthNumb
2013-03-19 20:36:27 1708
原创 Object-c学习笔记(一):对象的声明及初始化
一,类的声明类的声明包括两部分,声明部分及实现部分,下面以Person类的声明为例:1 Person.h: .h文件中主要是对类的声明(包括实例变量及方法等)#import @interface Person : NSObject{ //实例变量的声明 int identify; int age;}//方法的声明 以-开头的为实
2013-03-17 20:27:29 4724 4
原创 python打印斐波那契数列
做android的,一直用java,闲来无事,学学python(派森)打印斐波那契数列fibs = [0, 1]for number in range(20): fibs.append(fibs[-2] + fibs[-1])print fibs这也太简洁了。。。。。
2013-02-02 17:21:04 2539
转载 android Fragments详解一:概述
Fragment是activity的界面中的一部分或一种行为。你可以把多个Fragment们组合到一个activity中来创建一个多面界面并且你可以在多个activity中重用一个Fragment。你可以把Fragment认为模块化的一段activity,它具有自己的生命周期,接收它自己的事件,并可以在activity运行时被添加或删除。Fragment不能独立存在,它必须嵌入到activ
2013-01-21 09:53:02 2144
原创 anroid主题更换详解
项目需要进行主题更换,防Go桌面那样以apk形式进行主题更换,到网上找了下资料,资料不多,所以把自己学习的东西整理一下,以便以后查阅,同时也希望能帮到有需要的人:一、网上找到的网址:http://edison-cool911.iteye.com/blog/991048这个方法要求主题apk中的资源id和应用资源id完全相同,如果应用资源多的话,会出现主题包偏大的情况。二、我
2012-11-16 18:17:59 1750
原创 Launcher.java中AppWidget添加过程分析
1、首先、AppWidget添加的Dialog是通过长按出来的,所以查找onLongClick()方法,看到有showAddDialog(cellInfo);方法2、跳转到showAddDialog()方法看到showDialog(DIALOG_CREATE_SHORTCUT);是通过Activity的showDilaog()显示一个dialog,所以找到onCreateDialog方法,
2012-10-24 10:40:55 2378 1
原创 android Launcher:AllApps的更新分析
(1)在LauncherApplecation中注册应用的add、remove、update的监听mModel是一个LauncherModel的实例IntentFilter filter = new IntentFilter(Intent.ACTION_PACKAGE_ADDED); filter.addAction(Intent.ACTION_PACKAGE_REMOVE
2012-10-18 14:26:53 3093
转载 Android ViewGroup中事件触发和传递机制
Android ViewGroup中事件触发和传递机制Admin2011年6月20日针对由于触摸(Touch)而触发的事件。Android的事件:onClick, onScroll, onFling等等,都是由许多个Touch组成的。其中Touch的第一个状态肯定是ACTION_DOWN, 表示按下了屏幕。之后,touch将会有后续事件,可能是:
2012-09-11 09:34:45 1086
转载 android assets文件夹下的数据库应用
//当数据库大于1M时,要用FileSplit工具软件把文件分割成小于1M的小文件 // 复制assets下的大数据库文件时用这个 private void copyBigDataBase() { File file = new File(DB_PATH); if (file.exists()) { return; } mHandler.sendEmptyMessa
2012-09-03 10:28:07 1791
原创 Eclipse程序员要掌握的常用快捷键
新人一个,问前辈大哥的时候,人家都不用鼠标的,清一色的快捷键。所以在网上找了一下,总结了些用得比较多的,记录在这里Ctrl+K查找下一个相同的变量Shift+Ctrl+K跟Ctrl+K相反的方向查找相同的变量Ctrl+O打开类似大纲视图的小窗口(欧)Alt+左右方向键,跳到前一次/后一次的编辑位置双击左括号(小括号,中括号,大括号),将选择括号内的所有内容F3打开声明该引
2012-08-21 18:00:20 1985 1
原创 openGL ES 学习第一课(绘制三角形和四边形)
openGL ES主要是用于嵌入式设备的3D图形的绘制GLSurfaceView GLSurfaceView.Renderer效果如下:直接代码:1、GLRender.javapackage wu.demo.www;import java.nio.IntBuffer;import javax.microedition.khron
2012-08-18 15:41:10 3767
原创 android代码重启
先上代码:Intent intent = new Intent(Intent.ACTION_REBOOT);intent.setAction(Intent.ACTION_REBOOT);intent.putExtra("nowait", 1);intent.putExtra("interval", 1);intent.putExtra("window", 0);sendBroadca
2012-08-15 09:48:59 1546
原创 动态壁纸LiveWallPaper(字母雨及移动文字到屏幕边缘时会反弹)
上面的字母是从上面掉下来的,那个文字是另外的,会一直移动,碰到屏幕边缘时会几何反弹。。下落的字母只有一个y速度,移动的字符串有一个x速度和一个Y速度。下面是代码:1、继承WallPaper的类package com.wu.wallpaper;import java.util.ArrayList;import android.graphics.Canvas;
2012-08-13 14:19:46 4232
原创 android给Button或TextView等设置字体
mTypeface = Typeface.createFromAsset(context.getAssets(), "fonts/GOTHIC.TTF");在assets文件夹是新建一个fonts文件 夹,并在里面放入ttf格式的字体文件,通过上面的语句得到字体通过setTypeface()方法设置字体。mTextView.setTypeface(mTypeface);
2012-08-10 13:53:49 3802
原创 android源码编译apk的一点小总结
编译源码:Make -j16 //后面的-j16后个人的电脑,四核就写4,单核就不要写了。加上-j4后编译会快点执行完下面这句后会多出一些命令. build/envsetup.sh (build前面有一个空格)//mmm可以进行单个工程的编译 mmm packages/apps/Music/ 将自己要编译的工程复制到packages/apps/路径下面,以上面
2012-07-25 16:48:28 6525
原创 文件管理器--取得文件系统的可用大小,取得文件或文件夹的大小
StatFs类:/** * Retrieve overall information about the space on a filesystem. This * is a * Wrapper for Unix statfs(). */检索整个文件系统的空间信息,是对Unix中statfs()函数的封装, 开发中可用这个类取得文件系统的可用大小等。//递
2012-07-20 11:41:16 1130
原创 文件管理器--取得apk安装包的信息
//通过反射//取得apk安装包的信息public static ApplicationInfo getApplicationInfo(Context context,String archiveFilePath) { String PACKAGE_PARSER_CLASS_NAME = "android.content.pm.PackageParser"; ApplicationI
2012-07-20 10:44:58 1963
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人