<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[收破烂的]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ms2146</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ms2146]]></copyright><item><title><![CDATA[NSPredicate使用小结]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8684425</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8684425</guid><author>ms2146</author><pubDate>Sun, 17 Mar 2013 19:24:03 +0800</pubDate><description><![CDATA[Person
#import 

@interface Person : NSObject {
    NSString *_name;
    NSNumber *_age;
}

@property(nonatomic, retain) NSString *name;
@property(nonatomic, retain) NSNumber *age;

@end

使用:
#impo]]></description><category></category></item><item><title><![CDATA[IOS KVO使用小结]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8683632</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8683632</guid><author>ms2146</author><pubDate>Sun, 17 Mar 2013 14:41:33 +0800</pubDate><description><![CDATA[Book
#import "Book.h"

@implementation Book
@synthesize price = _price;

- (id) init {
    self = [super init];
    if (self) {
        self.price = 100.0;
        [NSTimer scheduledTimerWithTimeInte]]></description><category></category></item><item><title><![CDATA[IOS  KVC使用小结]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8683390</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8683390</guid><author>ms2146</author><pubDate>Sun, 17 Mar 2013 13:14:05 +0800</pubDate><description><![CDATA[Person.h#import 
#import "Father.h"
#import "Book.h"

@interface Person : NSObject {
@public
    NSString *_fullName;
@private
    NSString *_name;
    Father *_father;
    NSArray *_books;
}

@end]]></description><category></category></item><item><title><![CDATA[利用NSKeyedArchiver归档对象]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8682325</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8682325</guid><author>ms2146</author><pubDate>Sat, 16 Mar 2013 22:11:04 +0800</pubDate><description><![CDATA[单个对象归档:

        NSArray *array = @[@"111", @"aaa", @333, @"asdf3111"];
        NSString *homePath = NSHomeDirectory();
        NSString *filePath = [homePath stringByAppendingPathComponent:@"test.t]]></description><category></category></item><item><title><![CDATA[NSSet使用小结]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8657011</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8657011</guid><author>ms2146</author><pubDate>Sun, 10 Mar 2013 21:29:29 +0800</pubDate><description><![CDATA[#import 


int main(int argc, const char * argv[])
{

    @autoreleasepool {
        
        NSSet *set1 = [NSSet setWithObjects:@"a", @"b", @"c", @"d", nil];
        NSSet *set2 = [[NSSet alloc] ini]]></description><category></category></item><item><title><![CDATA[NSDictionary使用小结]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8656787</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8656787</guid><author>ms2146</author><pubDate>Sun, 10 Mar 2013 20:21:23 +0800</pubDate><description><![CDATA[#import 


int main(int argc, const char * argv[])
{

    @autoreleasepool {

        //创建字典
        NSDictionary *dic1 = [NSDictionary dictionaryWithObject:@"value" forKey:@"key"];
        NSLog(@"di]]></description><category></category></item><item><title><![CDATA[NSArray使用小结]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8654263</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8654263</guid><author>ms2146</author><pubDate>Sat, 09 Mar 2013 17:48:36 +0800</pubDate><description><![CDATA[#import 


int main(int argc, const char * argv[])
{

    @autoreleasepool {
      
        //类方法数组创建
        NSArray *array1 = [NSArray arrayWithObject:@"obj"];
        NSArray *array2 = [NSArray arr]]></description><category></category></item><item><title><![CDATA[NSString 使用小结]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8654148</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8654148</guid><author>ms2146</author><pubDate>Sat, 09 Mar 2013 16:58:46 +0800</pubDate><description><![CDATA[#import 

int main(int argc, const char * argv[])
{

    @autoreleasepool {
        //字符串常量(常量区)
        NSString *string1 = @"字符串常量";
        NSLog(@"string1 : %@", string1);
        
        //空字符串]]></description><category></category></item><item><title><![CDATA[Android 垂直Tab]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8650857</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8650857</guid><author>ms2146</author><pubDate>Fri, 08 Mar 2013 15:24:44 +0800</pubDate><description><![CDATA[项目中要用到VerticalTab，查阅资料得以解决，记录下。
首先要继承TabWidget然后再xml引用自定义TabWidget。
xml文件:


		<UIVerticalTabWidget
			android:id="@android:id/tabs"
			android:layout_width="wrap_content"
			android:layout_heigh]]></description><category></category></item><item><title><![CDATA[JAVA序列化对象]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/8637873</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/8637873</guid><author>ms2146</author><pubDate>Tue, 05 Mar 2013 14:41:42 +0800</pubDate><description><![CDATA[暮然回首，已经2年没写博客了，这两年都干了些什么，都学到了些什么东西，貌似自己也不明白。
在项目中，要实在特殊情况下持久化对象数据就想到鸟Serializable。
序列化:

ByteArrayOutputStream bos = new ByteArrayOutputStream();
		try {
			ObjectOutputStream oop = new ObjectOutp]]></description><category></category></item><item><title><![CDATA[android 自动弹出软键盘]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/6171293</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/6171293</guid><author>ms2146</author><pubDate>Tue, 01 Feb 2011 00:50:00 +0800</pubDate><description><![CDATA[<br />在onCreate中加入：<br />Timer timer = new Timer();
		timer.schedule(new TimerTask() {
			
			@Override
			public void run() 
			{
				((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS)]]></description><category></category></item><item><title><![CDATA[多个Activity 共享SharedPreferences]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/6171227</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/6171227</guid><author>ms2146</author><pubDate>Mon, 31 Jan 2011 23:04:00 +0800</pubDate><description><![CDATA[Activity1:SharedPreferences.Editor spf =getSharedPreferences("USERPASS",PreferenceActivity.MODE_WORLD_READABLE).edit();
							spf.putString("passWord", newPassWord);
							spf.commit();Activity2:SharedPreferences sp = getSharedPreferences("USERPASS",Pr]]></description><category></category></item><item><title><![CDATA[Activity has leaked window that was originally added 问题解决]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/6170332</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/6170332</guid><author>ms2146</author><pubDate>Sun, 30 Jan 2011 20:37:00 +0800</pubDate><description><![CDATA[  在做练习的时候，切换屏幕竖恒状态时，会出现Activity has leaked window that was originally added 错误。网上查询得知原因是因为alertDilaog没有关闭所造成的。有2种解决方案：1)：        @Override
	protected void onPause() 
	{
		super.onPause();
                //关闭对话框
		AlertDialog.dismiss();
	}2): Android]]></description><category></category></item><item><title><![CDATA[关闭MyEclipse代码编辑器（breadcrumb）工具条]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/6159451</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/6159451</guid><author>ms2146</author><pubDate>Sun, 23 Jan 2011 09:36:00 +0800</pubDate><description><![CDATA[<br />1. 在工具栏上找“ToggleBreadcrumb”按钮，单击使其恢复未选中状态即可<br /><br />2. 如果找不到这个按钮。通过菜单“Window->Customize Perspective”打开对话框，在“Command”标签页，选中复选框“Java Editor Presentation->toggle breadcrumb”，确定,就可以在工具栏上显示这个按钮]]></description><category></category></item><item><title><![CDATA[ubuntu10 集成android创建工程出错解决]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/6006949</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/6006949</guid><author>ms2146</author><pubDate>Sat, 13 Nov 2010 15:28:00 +0800</pubDate><description><![CDATA[<br />   最近在VM中装了ubuntu10 并且集成了android开发环境,但是在创建工程的时候发现工程有小红叉.看到console打印了几条error.<br />   1:ERROR: Unable to open class file /root/Workspaces/MyEclipse 8.x/test/gen/test/test/R.java: No such file or directory<br />      解决方案:在myeclipse中删掉R.java然后刷新工程.<br ]]></description><category></category></item><item><title><![CDATA[linux下用git下载android任意模块源码]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/6002659</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/6002659</guid><author>ms2146</author><pubDate>Thu, 11 Nov 2010 14:40:00 +0800</pubDate><description><![CDATA[   想要学习android看看系统的源码也是不错的选择，可以在linux用git下载模块源码。1：安装git  终端输入sudo apt-get install git-core2：mkdir code       cd code3：开始下载源码，这里下载音乐播放器源码  git clone git://android.git.kernel.org/platform/packages/apps/Music.git下载完成后，就可以阅读学习了。。]]></description><category></category></item><item><title><![CDATA[apk反编译]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/6001207</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/6001207</guid><author>ms2146</author><pubDate>Wed, 10 Nov 2010 20:58:00 +0800</pubDate><description><![CDATA[<br />  1:下载android-apktool共有2个文件笔者这里:<br />          1)apktool1.3.2.tar.bz2<br />          2)apktool-install-windows-2.2_r01-3.tar.bz2<br /> <br /> 将2个文件加压出来，把解压出来的文件放到system32里面。<br /> <br /> 2:下载dex2jar  解压到任意目录。<br /> <br /> 3:用android-apktool反编译*.apk ]]></description><category></category></item><item><title><![CDATA[ubuntu 第一次修改root 密码]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/5998179</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/5998179</guid><author>ms2146</author><pubDate>Tue, 09 Nov 2010 18:54:00 +0800</pubDate><description><![CDATA[<br /> 在安装ubuntu时，系统让用户创建了一个非root用户，系统启动后使用这个用户，如果我们要使用root用户时可以通过sudo来执行来初始化root密码。<br />    为此我们可以通过这样的方式修改root的密码：<br />chasfer@chasfer-ubuntu:~$ sudo passwd root<br />[sudo] password for chasfer: <br />输入新的 UNIX 密码： <br />重新输入新的 UNIX 密码： <br />passwd：已]]></description><category></category></item><item><title><![CDATA[android 广播机制]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/5991329</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/5991329</guid><author>ms2146</author><pubDate>Sat, 06 Nov 2010 10:02:00 +0800</pubDate><description><![CDATA[    相信广播的概念我们都很熟悉了。那么在andoird平台下广播机制是什么来头呢？ 一般手机短信的接受，电话的接受，电量过低等等，系统头会产生一个广播。那么这个广播放给谁听呢？在现实中，广播台放的广播是给谁放的呢？对了，是给在用广播接受器收听广播的用户收听的。那么没有用广播接收器的用户是不会收到广播信息的。在android平台下是一样的。   今天我们用接受短信来做个例子，当手机来短信时，首先系统会接受到这个短信，然后发送条广播说:"有条短信来了"，并且附加上了短信的相关信息，比如谁发的，信息内容等。当]]></description><category></category></item><item><title><![CDATA[android 操作xml]]></title><link>https://blog.youkuaiyun.com/ms2146/article/details/5989644</link><guid>https://blog.youkuaiyun.com/ms2146/article/details/5989644</guid><author>ms2146</author><pubDate>Fri, 05 Nov 2010 14:00:00 +0800</pubDate><description><![CDATA[<br />    在android平台下操作xml方式有很多种，常见的为SAX(Simple APIfor XML)和DOM(Document Object Model)。<br />今天总结下SAX的操作。<br />    SAX操作xml的特点是当读取xml文件的时候会随时触发事件，通过事件来处理当前读取到的内容。这一点是跟dom有所不同的，dom是全部读取完后在进行操作。<br />    首先这个事件是哪来的。要怎么让SAX才能知道这个事件，怎么触发他。<br />    这里我们就要自己写个类]]></description><category></category></item></channel></rss>