原创 android進程間通信(遠程服務aidl,客戶端)

上一篇已經介紹完服務端的創建,在此基礎上創建客戶端來實現進程間通信。 客戶端 可以看到客戶端的包(com.hm.aidl)下的文件和服務端的一樣,文件和包名一定要相同。 佈局文件很簡單:四個button,負責bind服務,註冊回調,獲取

原创 android 循環自定義View

效果:固定的子view個數,循環滑動,第一個子View向左滑即滑到最後一個子View,最後一個子View向後右滑即滑到第一個子View 效果圖如下: 佈局:可以看出LoopViewGroup實現循環滑動,包括七張ImageView 圖片

原创 android 百度API定位以及獲取天氣

1.申請百度AK 申請地址:http://lbsyun.baidu.com/apiconsole/key 在應用中的manifest申明 <meta-data android:name="com.baidu.lbs

原创 C積累

折半查找 //while循環中使用了兩次 int binsearch(int x, int v[], int n) {     int low, high, mid;     low = 0;     high = n - 1;    

原创 類似NumberPicker的效果實現

最近在做電視項目,關於TV搜臺,當搜臺時,搜臺頻率會變化,需要一個數字滾動的效果。 如效果圖: 此效果實現比numberpicker簡單很多,不需要處理滑動事件,只需要相應按鍵事件或者其他觸發滾動事件。 先來看佈局文件main.xml

原创 android進程間通信(遠程服務aidl,服務端)

android進程間通信,使用service,調用bindService來綁定服務,本例實現雙向通信。 服務端 可以看到有三個aidl文件,是實現進程間通信必須的。 Iservice.aidl文件:服務要使用此文件產生的stub,調用方

原创 android ActionBar

ActionBar學習筆記 (1)XML文件和手動添加Menu Item XML文件中添加,然後在activity的onCreateOptionsMenu方法中引用getMenuInflater().inflate(R.menu.main

原创 平行四邊形的效果實現

要實現的效果圖如下: 實現此效果的第一思路是使用Path 和canvas實現,path來規定平行四邊形。 實現如下 佈局文件 <RelativeLayout xmlns:android="http://schemas.android

原创 指針

char amessage[] = "now is the time"; char *pmessage = "now is the time"; 區別: 數組amessage分配一段存儲空間,指向同一個存儲空間,而且始終指向這段地址,而這

原创 Head First---命令模式

命令模式屬於對象的行爲模式,它把一個請求或者操作封裝在一個對象中,以便使用 不同的請求、隊列或者日誌來參數化其他對象。命令模式也支持可撤銷操作。 命令模式涉及到五個角色: (1)client:這個客戶負責創建一個ConcreteComma

原创 android Binder機制

一、Bindr框架 Binder是一種架構,這種架構提供了服務器端口、Binder驅動、客戶端接口三個模塊。如下圖: 客戶端:客戶端通過Ixxx.Stub.asInterface()來獲得代理,同時將BinderProxy傳給Prox

原创 android launcher滑屏動畫分析

流程: 實現方式:不斷的重繪中,不斷的重新設置Matrix和Canvas,來實現動畫。   Matrix幾種函數介紹: (1)setPolyToPoly(float[]src, int srcIndex, float[]dst, i

原创 android 日曆動畫的實現

華爲P8日曆的截圖 目前僅實現動畫,內容沒有填充,效果如下圖 佈局分析 承載日曆網格的是一個ViewPager,每天的日曆活動是一個ListView,需要實現的效果是,在listview區域向上滑動,viewpager也跟着滑動,滑動

原创 android 圖像縮放

1.ImageView的ScaleType ImageView是Android中的基礎圖片顯示控件,該控件有個重要的屬性ScaleType,這個屬性在一定程度上可以控制圖片顯示的縮放。Launcher中AppWidget的preview顯

原创 JNI

windows下使用cygwin編譯,cygwin安裝教程省略,需要配置 環境變量 在eclipse中創建頭文件 在jni/目錄下 javah -classpath ../bin/classes -jni com.example.jni