格式化

廣告

廣告2

2012年2月19日 星期日

[Android app開發基本概念] Drawable圖片格式的選擇

常見的3中圖片格式及其差別:
  • JPEG—照片的標準格式,不支持透明。
  • GIF—被限制在256色因此對於大塊純色和簡單圖像非常好。它支持透明但是會產生鋸齒邊緣。
  • PNG—.jpg和.gif的漂亮結合,具有.jpg圖片的質量和.gif的透明度,而且沒有鋸齒。
android佔時還不支持GIF,所以常用的圖片格式只有.JPG和.PNG兩種。
我們需要關心的主要因素是:圖片的大小、  圖片的質量。



關於這兩點它們之間的區別在於:
文件大小—這比較顯著的區別。一般.png的大小是幾百k,而.jpg只有小小的幾十k。
顏色和對比度—.jpg的顏色更豐富,更飽和。 .png看起來則沒有那麼豐富。
  • 小尺寸,色彩數少,或者需要用到透明的時候,使用PNG。
  • 大尺寸,色彩漸變色多的用JPG。

根據不同的應用需求給出建議是:
  1. 使用JPG
  2. 如果你不需要保存圖片的透明背景;如果你的圖片需要保存圖像質量,色彩以及飽和度。

使用PNG

  1. 當你的圖片需要透明時
  2. 當使用純繪圖圖片時。.png格式渲染照片效果沒有那麼好。

2012年2月11日 星期六

[Android app開發基本概念] 抓取手機上時間資訊


可以獲得當前的年月時分秒
SimpleDateFormat sDateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String date = sDateFormat.format(new java.util.Date()); 

如果只想獲淂當前的年月,則可以這樣寫(只獲取時間或秒都一樣改寫):
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM"); 
String date=sdf.format(new java.util.Date()); 

利用Calendar獲取
Calendar c = Calendar.getInstance();
year = c.get(Calendar.YEAR);
month = c.grt(Calendar.MONTH);
day = c.get(Calendar.DAY_OF_MONTH);
hour = c.get(Calendar.HOUR_OF_DAY);
minute = c.get(Calendar.MINUTE);


利用Time獲取
Time t=new Time(); // or Time t=new Time("GMT+8"); 加上Time Zone資料。
t.setToNow(); // 取得系統時間。
int year = t.year;
int month = t.month;
int date = t.monthDay;
int hour = t.hour; // 0-23
int minute = t.minute;
int second = t.second;


2012年2月10日 星期五

[Android app開發基本概念] SQLite時間排序解答

用以下這種方法排序日期絕對是不行的!!
select * from outcome order by datetime desc

應該要用儒略日Julian day)函式來做排序才對

不過在這之前欄位格式一定要存成這種格式

2011-08-05 21:14:35 -> yyyy-mm-dd hh:mm:ss 


然後再用以下語法去查詢就可以得到正確的排序結果囉!
SELECT * FROM outcome order by julianday(datetime) desc