2011-08-05 79 views
0

簡而言之,被要求創建一個應用程序,用於記錄數據特定數據並在完成時將其顯示在屏幕上。所以它的功能就是這樣。圖形用戶界面,小部件,用戶界面:我將如何去創建針規?

press start > press stop > display results. 

但是,我剛纔被他要顯示針圖(G-力,平均速度,最高速度)的信息我公司的IT主管告訴,也希望顯示的浮華方式其他人(時間拍攝,所行進的距離)

我的初始想法是這樣的:

創建一個針規這樣gauge,但在較小的規模和具有低於或圖形旁邊的數字值顯示,並只是顯示行駛的距離和所花費的時間顯示爲鬧鐘樣式數字。這將全部運行在屏幕左側的細列中,然後顯示起始位置和結束位置的路線圖,用於旅行的路線

基本上我希望看​​起來像這樣map(對於圖紙的粗糙感到抱歉) 沿着這些線條的東西將是完美的!

我想我可以研究地圖業務和時間和距離讀數的數字,但我從來沒有做過任何真正花哨的UI東西。

我該如何開始製作針規?

我正在考慮嘗試一個水平儀表可能嗎? Incase我不能讓針規工作。

此外,我只有一個星期二! :S

+1

做了搜索可能會幫助 - http://stackoverflow.com/questions/1046256/how-can-i-create-custom-controls-in-android和http://developer.android.com/guide/topics/ui/custom-components 。html – arunkumar

回答

1

INVISION以下非常基本的想法

我們有一個背景圖像,它是沒有針規我們的自定義視圖!

所以我們首先來實現這個使用擴展View

public class ourGauge extends View { 

    private Bitmap bgImage = null; 

    public ourGauge(Context context, Bitmap bgImage) { 
     super(context); 
     this.bgImage = bgImage; 
    } 

    public ourGauge(Context context) { 
     super(context); 
    } 

    @Override 
    public void onDraw(Canvas canvas) { 
     super.onDraw(canvas); 
     canvas.drawBitmap(bgImage, 0, 0, null); 
    } 

} 

現在讓我們添加一個針類

public class ourGauge extends View { 

    private Bitmap bgImage = null; 
    private int indicator; 
    Paint paint = new Paint(); 

    public ourGauge(Context context, Bitmap bgImage) { 
     super(context); 
     this.bgImage = bgImage; 
    } 

    public ourGauge(Context context) { 
     super(context); 
    } 

    public void setIndicator(int indicator){ 
     this.indicator = indicator; 
     invalidate(); 
    } 

    @Override 
    public void onDraw(Canvas canvas) { 
     super.onDraw(canvas); 
     canvas.drawBitmap(bgImage, 0, 0, null); 
     //you could set color based on indicator (speed or sth) 
     paint.setColor(Color.BLACK); 
     canvas.drawLine(0, 0, 20, 20, paint); 
     //you have to find the formula to get from where to where the line should drawn 
    } 

} 

,使其更好地

  1. 不要使用drawLine不畫針而是使其與尺寸形狀
  2. 要創建速度動態標籤,您應該引起他們太多
+0

我想我愛你 – Ian

+1

haha​​hah:P好吧,我們都不!請記住,這只是一個基本的想法!努力讓它成爲真正的一個 –

+0

會做,但這會給我一個很好的起點!在與同事交談之後,我想我可能會對這個想法進行修改,並找出一個「填滿」到所需點的半圓規。我將嘗試通過黑色背景來實現這一點,並將顏色繪製到正確的位置。想象一下,如果我上面張貼的量表有一個「看不見的」針,當它上升時,它將黑色移除以顯示顏色。 – Ian