1.Objective-C的类可以多重继承么?可以采用多个协议么? 答:不可以多重继承,可以采用多个协议. 2.#import和#include的区别是什么?#import<> 跟 #import""有什么区别? #import能避免头文件被重复包含的问题: 1) 一般来说,导入objective c的头文件时用#import,包含c/c++头文件时用#include. 使用include要注意重复引用的问题: class A,class B都引用了class C,clas…
本文介绍如何在Ubuntu下安装Mac OS X Mavericks系统.具体如下: 1)安装前准备工作 下载Mac OS X Mavericks系统,地址:http://pan.baidu.com/s/1dDDzXbb . 需要下载的文件有:HackBoot_Mav.iso.OSXMavericks2.part1.rar .OSXMavericks2.part2.rar .OSXMavericks2.part3.rar.然后将压缩包解压备用.解压后的结果如下: 然后还需要下载去Virtualb…
如何在最新版本的 Ubuntu下(14.10)来安装.编译Objective-C? Ubuntu已经有了对Objective-C的编译器(gobjc)的安装,因此安装gobjc的步骤可省,如果你用的Ubuntu的旁系系统没有安装可以使用以下命令进行安装: sudo apt-get install gobjc 接下来,我们主要就是对gnustep库的安装.对OS X或iOS编程过的朋友应该对Foundation库不陌生吧,这个就是在gnustep库里的,如果不装此库,你连NSObject都用不了,…
本文链接:[起航计划 002]2015 起航计划 Android APIDemo的魔鬼步伐 01 参考链接:http://blog.csdn.net/column/details/mapdigitapidemos.html?&page=12 该专栏含:简明android教程24篇,API Demo示例解析205篇,对全面理解android,及利用android进行应用开发帮助极大!是初.中级开发人员的理想学习干货! 01 2014年 智能平台市场占有率 最新数据:2014年Android市场份额…
01 API Demos ApiDemos 详细介绍了Android平台主要的 API,android 5.0主要包括下图几个大类,涵盖了数百api示例:…
本例和下个例子Remote Service Controller 涉及到的文件有RemoteService.java ,IRemoteService.aidl, IRemoteServiceCallback.aidl 及ISecondary.aidl. Android Interface Definition Language(AIDL)和其它一些支持远程方法调用RMI的系统的IDL类似,它定义了Service和Client 之间的使用接口约定,这种远程调用一般需要通过进程间通信机制(IPC)来…
前面LocalService 主要是提供同一Application中组件来使用,如果希望支持不同应用或进程使用Service.可以通过Messenger.使用Messgener可以用来支持进程间通信而无需使用AIDL. 下面步骤说明里Messenger的使用方法: 在Service中定义一个Handler来处理来自Client的请求. 使用这个Handler创建一个Messenger (含有对Handler的引用). Messenger创建一个IBinder对象返回给Client( onBind…
Local Service Controller 是将LocalService当作“Started”Service来使用,相对于”Bound” Service 来说,这种模式用法要简单得多,LocalServiceActivities.Controller 启动Local Service 之后就基本上不管LocalService了 startService(new Intent(Controller.this,LocalService.class)); LocalService可以选择自己停止自…
本例和下列Local Service Controller 的Activity代码都定义在LocalServiceActivities.Java 中,作为LocalServiceActivities 内部类实现的. 调用的Service为LocalService. LocalService既可以做为“Started” Service,也可以做为”Bound” Service. 一个“Bound” Service 可以通过Client/Service模式提供Service.它运行应用程序组件(比如…
Android系统也提供了一种称为“Service”的组件通常在后台运行.Activity 可以用来启动一个Service,Service启动后可以保持在后台一直运行,即使启动它的Activity退出或是切换到别的应用Service也能保持运行状态. Service 可以以两种形式存在: Started 当一个如Activity使用startService()来启动一个Service,一旦Service启动后,就不受启动它的Activity控制, 可以在后台长期运行,通常这种Service在后台…
Search (搜索)是Android平台的一个核心功能之一,用户可以在手机搜索在线的或是本地的信息.Android平台为所有需要提供搜索或是查询功能的应用提 供了一个统一的Search Framework来帮助实现Search功能.Search Framework的UI可以有两种形式: 屏幕顶部的Search Dialog:如Google Map提供的搜索条. 可以嵌到ContentView中的SearchView,应用可以将它放在屏幕上任何地方. 不管采用那种UI,Android系统都可以通…
前篇文章Android ApiDemo示例解析(31):App->Preferences->Launching preferences 中用到了Advanced preferences 中定义的AdvancedPreferences. 本篇具体介绍AdvancedPreferences, 这个例子称为Advanced ,是因为它涉及到了自定义Preference, 并在一个工作线程中刷新某个Preference的值. Preference 为显示在PreferenceActivity (一般以…
这里我们使用类比的方法,将 PreferenceActivity 与一般的Activity 作个类比,可以更好的理解Android.Preference中的各个类. PreferenceActivity Activity Preference View PreferenceGroup ViewGroup PreferenceScreen LinearLayout CheckBoxPreference CheckBox EditTextPreference EditText ListPrefere…
DefaultValues 介绍了如何在XML中定义Preference的缺省值. <CheckBoxPreference android:key="default_checkbox" android:defaultValue="true" android:title="@string/title_checkbox_preference" android:summary="@string/summary_checkbox_pref…
前给例子介绍了如何使用PreferenceActivity 来显示修改应用偏好,用户对Preferences的修改自动存储在应用对应的Shared Preferences中. 本例介绍了如何从一个Activity来取得由PreferenceActivity 的Preference值. 比如在实际应用中通过PreferenceActivity界面来取得用户偏好或是配置. 因为希望从PreferenceActivity返回值,所以使用startActivityForResult 来启动Prefere…
我们在前面的例子Android ApiDemo示例解析(9):App->Activity->Persistent State 介绍了可以使用Shared Preferences来存储一些状态,Shared Preferences更一般的用法是用来存储一些应用程序偏好(设置). 包android.preference 提供了很多类可以方便应用程序来显示和设置应用相关的偏好.当然你可以使用自定义的UI来配置这些程序偏好.但使用android.preference 中定义的类可以给用户一个统一的UI…
这个例子的Icons Only 和 Icons and marquee 没有什么特别好说明的. 而Use Remote views in balloon 介绍了可以自定义在Extended Status bar显示Notification的Layout,Extended Status Bar缺省显示Notification 是一个图标后接文字,对应大多数情况是够用了.但如果有需要也可以使用自定义的Layout在Extented Status bar显示Notification,方法是通过Remo…
这个例子介绍了如何在Service中使用Notification,相关的类为NotifyingController和NotifyingService. 在Service中使用Notification的基本方法和前一例子相同.我们暂时还没有介绍Service的用法. Service的基本概念和Windows OS中Service基本相同:没有UI,在后台运行.Notification可以说是Service最好的用来通知用户的方法.后面有专门介绍 Service的用法,这里就不说明了. Notify…
应用程序可以使用Notifications来通知用户某个事件发生了(如收到短信).类NotificationManager 用来处理Notification, NotificationManager可以: 在Status Bar上显示一个新的图标. 在Extended status bar 窗口上显示附加信息或是启动一个Activity. 显示背光/LED. 使设备震动. 发出声音等. 对于一些没有UI的应用程序组件(如Broadcast Receiver, Services)或是非活动状态的A…
本例MenuInflateFromXml.java演示了如何从Menu 资源(XML 定义)展开菜单项.这个例子的onCreate 采用了使用代码来创建Activity 界面的方法 而通常的方法是采用Layout资源的方法.如果你有兴趣了解一下如何使用代码创建UI,可以参考本例的onCreate方法,但这不是本例的演示目的. // 1.创建LinearLayout布局 Create a simple layout LinearLayout layout = new LinearLayout(th…
Android 操作系统对于<intent-filter>含有下列属性的Activity会在应用程序管理器(Launcher)显示一项,一般这个Activity对应于某个应用的主Activity. <action android:name=”android.intent.action.MAIN” /> <category android:name=”android.intent.category.LAUNCHER” /> 此外,如果用户想在设备的Home Screen上…
Intents 这个例子的代码非常简单: public void onGetMusic(View view) { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("audio/*"); startActivity(Intent.createChooser(intent, "Select music")); } public void onGetImage(View view)…
这个例子的主Activity定义在AlertDialogSamples.java 主要用来介绍类AlertDialog的用法,AlertDialog提供的功能是多样的: 显示消息给用户,并可提供一到三个按钮(OK, Cancel ,Yes ,No)用于选择或是显示警告. 显示一个列表以供用户选择,列表中可以是Radio Button  (单选),Check button (多选) 显示文本框来接受用户输入等. 创建AlertDialog一般是通过AlertDialog.Builder来构造: A…
Device Admin示例介绍了类DeviceAdminReceiver,DevicePolicyManager和ActivityManager. 使用DevicePolicyManager这个类,这个类可以接管手机的应用权限,对手机做出很多大胆的操作,比如锁屏.恢复出厂设置.设置密码.强制清除密码,修改密码.设置屏幕灯光渐暗时间间隔等操作. 当它Publish在AndroidManifest.xml作为BroadcastReceiver定义时,必须处理 android.app.action.…
Alarm Service和Alarm Controller 例子非常类似,只是Alarm Service是用来Schedule一个Service,而前面的例子是来Schedule一个Broadcast. 前面说过PendingIntent ,可以来描述一个Activity ,Broadcast,或是一个Service.本例是Schedule一个Alarm事件来启动一个Service.这通常用于来执行一个较费时的任务. 关于如果编写一个Service将在后面的有专门的例子来说明,只里不详述.只要…
Alarm Controller演示如何在Android应用中使用Alarm事件,其功能和java.util.Timer ,TimerTask类似.但Alarm可以即使当前应用退出后也可以做到Schedule一个任务在指定的时刻执行. AlarmManager 用于管理Alarm事件,支持单次执行或重复执行. 和大都数Android服务一样,AlarmManager也是通过getSystemService来获取服务对象: AlarmManager am = (AlarmManager)getSy…
Wallpaper介绍一个Activity如何通过Style把系统Wallpaper作为当前Activity的背景. 这是WallpaperActivity在AndroidManifest.xml中的定义: <activity android:name=".app.WallpaperActivity" android:label="@string/activity_wallpaper" android:theme="@style/Theme.Wall…
这个例子和Translucent不同的一点是Blur,也就是显示在当前Activit背后的其它Activity以模糊方式显示. 这是通过window对象Flag来设置的. // Have the system blur any windows behind this one. getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND);…
Activity分类示例的最后几个例子是来显示半透明Activity.例子大同小异.实现Activity的半透明效果主要是通过Style和Theme来实现的. 看看TranslucentActivity 在AndroidManifest.xml中的定义: <activity android:name=".app.TranslucentActivity" android:label="@string/activity_translucent" android:t…
SetWallpaper介绍如何在Android获取当前Wallpaper,对Wallpaper做些修改,然后用修改后的图像重新设置Wallpaper.(即设置>显示>壁纸>壁纸的功能) WallpaperManager用来管理Android的Wallpaper.下面代码通过WallpaperManager来取得当前Wallpaper然后显示在屏幕Layout的imageView上. final WallpaperManager wallpaperManager = WallpaperM…