通訊錄專案有關總結

2021-07-22 15:56:21 字數 3659 閱讀 1838

功能模組:聯絡人

聯絡歷史

撥打**

簡訊聊天

1.聯絡人管理涉及的表

contacts  聯絡人表  一條記錄記錄乙個聯絡人資訊  與

raw-contacts

是一對多的關係

raw-contacts  聯絡人的賬戶資訊乙個

raw-contacts

有多種型別的資料對應多種

data 表

data 聯絡人的詳細資訊

mimetype 儲存資料的型別  型別的對照表

2.實現友錄專案的引導介面

splashactivity介面跳轉

imageview(logo)

組合動畫

android動畫方案:

1)補間動畫

anim.splash.xml

組合動畫

:漸變縮放

應用:將動畫檔案解析成動畫物件,將動畫物件設定給應用動畫的控制項

可給動畫設定監聽,動畫結束時跳轉

在跳轉結束時實現切換動畫(出場和入場)

overridependingtransition(r.anim.outsplash, r.anim.in_main);

2)幀動畫

3)屬性動畫

day_02

1.聯絡人的管理相關的contentprovider:

a) contactscontract.contacts對應

contracts

資料庫contacts表

b) 2.單元測試的步驟

a) 在清單檔案中配置依賴的庫 <

uses-library

android:name="

android.test.runner

"/>

b) 配置測試目標專案

<

instrumentation

android:name="android.test.instrumentationtestrunner"

android:targetpackage="com.tarena.youlu"

>

instrumentation

>

c.建立測試案例(繼承

androidtestcase)

3.contactmanager

查所有的聯絡人

根據聯絡人的頭像id查聯絡人的頭像

對聯絡人資訊和頭像資訊進行快取

在以上基礎上繼續查詢data表中的資料(

mimetype

,data1

)根據以下判斷mimetype的型別是何種型別資料進行分類

public

final

staticstringtype_name

= "vnd.android.cursor.item/name";

public

final

staticstringtype_email

= "vnd.android.cursor.item/email_v2";

public

final

staticstringtype_phone

= "vnd.android.cursor.item/phone_v2";

public

final

staticstringtype_address

= "vnd.android.cursor.item/postal-address_v2";

4.mybaseadapter的封裝

5.contactadapter

day_03

bitmap  (影象的繪製)

1.圓形頭像的處理

a) 根據頭像的大小建立畫布

b) 在畫布上先畫乙個(作為背景)

c) 設定畫筆的的交叉模式mode.src-in;

d) 繼續用畫筆畫方形的頭像(作為前景)

e) 繼續用畫筆畫圓形邊框(白色)

f) 將整個畫布的bitmap物件返回

2.新增聯絡人的資訊

a) 通過自定義的對話方塊,呼叫系統的新增聯絡人的activity實現聯絡人的新增

contactscontract.intents.show_or_create_contact

3.編輯聯絡人的資訊

a) 通過自定義的對話方塊,呼叫系統的編輯聯絡人的activity實現聯絡人的編輯

intent.action_edit

i. uri:content://contacts/people/id 4.

刪除聯絡人的資訊

a) 先刪除聯絡人的賬戶資訊,再刪除聯絡人資料資訊

b) 刪除時候設定刪除條件,條件為聯絡人的id

day04

1.通過分析聯絡歷史的ui效果圖

抽取出聯絡歷史的實體類

編號姓名

**號碼

通話時間

通話型別

頭像的id   

2.通話時間格式化的思路

如果是當天打得

通話時間為:hh:

mm形式

前一天通話時間為:昨天

如果是一周以內打的:

通話時間為:星期幾

如果是一周之前

通話時間為:年-月-日

data ,******dataformat,canlender

day_04總結

1.聯絡歷史

聯絡歷史的檢視

calllog.calls

聯絡歷史的刪除

根據聯絡歷史的物件id實現聯絡歷史的刪除

1.從表中將聯絡歷史刪除

2.從介面卡中刪除,更新

2.練習calllogadapter介面卡的編寫注意控制項的優化處理

3.撥打**

soundpool 音效池

檢視:在資料庫中calls表中檢視聯絡歷史,建立實體類

calllog

封裝要檢視的屬性

在contactmanager中

get方法得到

calllog

記錄,呈現在

ui上(通過

listview

),因此還需要

寫xml布局,然後編寫介面卡

calllogadapter,getview (

主要就是編寫),在

calllogfragment

中關聯介面卡。就可得到聯絡歷史。

刪除:根據聯絡歷史物件的id刪除(

contentresolver

)刪除後要更新。

day_05

1.動態的建立撥號鍵盤的建立

所有的鍵盤文字存中陣列中

迴圈該陣列在迴圈過程中動態建立

textview物件並設定

textveiw

的屬性

布局引數的建立(width。

height)

通過布局引數設定每個按鍵的對齊規則

2.soundpool的音效池

例項化soundpool物件

新增音效載入完畢時的監聽

載入音效

音效的釋放

通訊錄小專案

可以儲存1000人的資訊,個人資訊包括姓名 住址 年齡 性別。提供方法 1 新增聯絡人資訊 2 刪除指定聯絡人資訊 3 查詢指定聯絡人資訊 4 修改指定聯絡人資訊 5 顯示所有聯絡人資訊 6 清空所有聯絡人資訊 7 以名字排序所有聯絡人 1 從檔案讀取和向檔案寫入資訊 fopen fclose fs...

單鏈表通訊錄 通訊錄2 0

單鏈表通訊錄 通訊錄2.0 標頭檔案 ifndef address h define address h include include include define success 10000 define failure 10001 define true 10002 define false ...

C語言通訊錄小專案

include include include include 定義節點 struct node 建立頭節點 int init struct node pheader return 0 bzero pnode,sizeof struct node 清理堆空間 pnode name 20 對於字元陣列...