最近實驗室做到的專案,需要在手機上實時顯示從wifi模組傳過來的頻譜資料,通過對比網上相簿,最終選了achartengine,經過這兩天的研究終於搞定,在此與大家分享。
頻譜圖的要求如下:
1,由於是實時資料,因此需要曲線能動態更新;
2,資料上傳的速度不快,中間還有可能缺失,因此需要分段顯示
3,橫座標軸是隨著使用者輸入頻率的範圍的變化而變化
解決動態更新:使用了timetak和handler的結合,定時掃瞄,定時重繪,其中update()是重回函式
handler = new handler()
};task = new timertask()
};timer.schedule(task, 1000, 1000);
解決分段畫的畫法:
xymultipleseriesdataset,xymultipleseriesrenderer分別是畫線的點集資料容器和線條的顏色渲染,檢視官網api發現他們是可以存放陣列的;
分段重新整理的思路:將指定的曲線取出,換成要重新整理的資料,再重新新增到資料集的指定位置;
series=mdataset.getseriesat(data[0] - 1); //找到資料容器中對應的曲線,
mdataset.removeseries(data[0] - 1);//將該曲線移除
series.clear();//清除資料點集,為新資料做準備
//填入新的資料
for (int k = 0; k < 1024; k++)
// 在資料集中新增新的點集
mdataset.addseries(data[0] - 1, series);//最後將擁有新資料的曲線凡在指定位置
最後完成重新整理:chart.invalidate();
android 動畫分析
主要思路 tween 動畫通過對 view 的內容完成一系列的圖形變換 包括平移 縮放 旋轉 改變透明度 來實現動畫效果。具體來講,預先定義一組指令,這些指令指定了圖形變換的型別 觸發時間 持續時間。這些指令可以是以 xml 檔案方式定義,也可以是以源 方式定義。程式沿著時間線執行這些指令就可以實現...
關於achartengine的使用一些小經驗
最近專案上要使用圖表,便開始在網上找各種圖表架包,好看的都是收費的,最後還是決定用google的achartengine.achartengine使用起來還算好,就是修改樣式很煩.下面就分享下開發經驗吧.所有的chart都分兩塊,一塊是renderer 如xymultipleseriesrender...
UI布局畫分割線
ui布局中有很多需要畫線條,我們一般做法乙個是在xib 上拖出乙個uiview 控制項,然後將高度設為1 但是這樣做是達不到系統線條那種效果,看起來比較粗 這裡提供一種方式 將線條加在layer 上面 cgcolorref bordercolor uicolor colorwithhexstring...