2011-05-24 90 views
0

我想編寫一個androd應用程序,如果在屏幕的兩個位置上有輸入,那麼它將在兩點之間畫一條線。我已經設置了工作的「X」和「Y」值,列和行由「X」和「Y」值定義。在那些我有一個IF語句,需要在兩點之間畫線。說如果選擇第一列和第二列,然後選擇第一列和第三列,我想要在兩點之間畫一條線。此外,我不完全確定如何使用MotionEvent的東西或如何將觸摸操作放入IF語句中。如何在java的IF語句中繪製一條線

 final View touchView = findViewById(R.id.touchView); 
touchView.setOnTouchListener(new View.OnTouchListener() { 
    @Override   
    public boolean onTouch(View v, MotionEvent event) { 
      String.valueOf(event.getX() + String.valueOf(event.getY())); 
     double c = event.getX(); 
     double column = Math.floor(event.getX()/(480/12)); 
     double r = event.getY(); 
     double row = Math.floor(event.getY()/(630/12)); 


    if (column == 0 && row == 2 //there should be more stuff here 
        ) { 
        //I dont know how to draw a line in here, please help 
    } 
     return true;  
     } 
    }); 
} 
+0

看到這個線程:[如何在android中繪製線條](http://stackoverflow.com/questions/3616676/how-to-draw-a-line-in-android) – 2011-05-24 04:02:56

+0

謝謝,它有幫助。 – Pillager225 2011-05-24 04:38:40

回答

2

而不是在這裏解釋的細節,我會指示你這些作品的示例代碼從SDK附帶的ApiDemos示例項目,這可能不正是你想要的:

的基本思路是,以存儲X和Y座標在您觸摸事件處理程序,無效吃了View,然後使用Canvas操作在onDraw方法中畫線,例如drawLine

+0

謝謝,但是什麼以及哪裏得到了擴展的圖形活動,但是如果你不需要,那麼你會怎麼做。對不起,我需要這麼多的幫助,但如果你不能說,我真的很新。 – Pillager225 2011-05-24 04:19:12

+0

'GraphicsActivity'也​​在ApiDemos示例應用程序中:http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/GraphicsActivity.html – 2011-05-24 15:47:22

0

你確實需要一個工具來繪製線條,最適合你看起來是帆布。如果你對Canvas和Android一無所知,但我建議你看看Android留給我們的一些檢查。你做的那些,這將是一個簡單的任務。

+0

這可能看起來像一個愚蠢的問題,但android在哪裏給我們這些例子? – Pillager225 2011-05-24 04:30:13

+0

嗯,我不記得在http://developer.android.com/index.html網上有沒有任何例子。可能有,但是,在your'e android sdk中的samples目錄中。例如Lunar-Lander,這是一款在Android中使用Canvas的遊戲。 – Henrik 2011-05-24 08:56:59