2017-02-19 78 views
-3

在我的应用程序中检索坐标X Y每次我触摸屏幕时,我想填充这些点在列表中有两个维度,每个点都有它自己的xy,我该如何做到这一点二维列表java

List<Float> list = new ArrayList<Float>(); 
public void moveTouche (float x,float y) { 
    if ((canDraw)&& drawing) { 
    float dx = Math.abs(x - mX); 
    float dy = Math.abs(y - mY); 
     list.add(x); 
     if(dx >= Tolerance || dy >= Tolerance){ 
      path.quadTo(mX,mY,(x+mX)/2,(y+mY)/2); 
      mX = x ; 
      mY = y; 
     } 
    } 
} 
+0

看起来不像Android的具体问题 – Sid

回答

1

您可以创建一个List<Float[]>

List<Float[]> list = new ArrayList<>(); 
list.add(new Float[]{mX, mY}); 

例如:

List<Float[]> list = new ArrayList<>(); 
//add point one 
list.add(new Float[]{5.f, 6.f}); 
//add point two 
list.add(new Float[]{99.f, 0.f}); 

如果はNT显示可以使用:

for (int i = 0; i < list.size(); i++) { 
    System.out.println("Point " + (i+1) + " Cordination = "+ Arrays.toString(list.get(i))); 
} 

编辑

您可以一边声明你列出你的方法是这样的:

List<Float[]> list = new ArrayList<>(); 
public void moveTouche (float x, float y) { 
    //... 
    list.add(new Float[]{x, y}); 
    //... 
} 
+0

如果我把list.add(new Float [] {m​​X,mY});在该方法中,每次我触摸屏幕时,llist都会重新创建? – CamlX

+0

@AbbesChouokchou那么你应该声明你的列表方法r你可以检查你的列表是否为空或当你调用这个方法 –

+0

检查我的编辑@AbbesChouokchou –