2014-01-30 47 views
0

我想創建一個應用程式,例如加入點通過按鈕連線多個按鈕然後在Android

對於我是在onclick事件使用上main_layout文件

imagebuttons我想畫一條線按鈕

兩者之間如對BUTTON2點擊,從按鈕1到按鈕2線應該在BUTTON3點擊,線從BUTTON2繪製 到BUTTON3

這很簡單,同意 而T3 o畫線我正在使用畫布,這使我很難處理onclick事件

我正在計算我的mainActivity的onResume()方法中的座標。

下一步該做什麼?帆布的任何替代方案?

public class MainActivity extends Activity implements OnClickListener { 
public Button b1,b2,b3; 
public int co_orodinates[]; 
public int b1x,b1y,b2x,b2y,b3x,b3y; 
public Bitmap bitmap; 
public Canvas canvas; 
@Override 
protected void onResume() 
{ 
    super.onResume(); 
    b1.getLocationOnScreen(co_orodinates); 
    Log.d("b1 location "," "+co_orodinates[0]+" "+co_orodinates[1]); 
    b1x=co_orodinates[0];b1y=co_orodinates[1]; 
    co_orodinates[0]=0;co_orodinates[1]=0; 

    b2.getLocationOnScreen(co_orodinates); 
    Log.d("b2 location "," "+co_orodinates[0]+" "+co_orodinates[1]); 
    b2x=co_orodinates[0];b2y=co_orodinates[1]; 
    co_orodinates[0]=0;co_orodinates[1]=0; 

    b3.getLocationOnScreen(co_orodinates); 
    Log.d("b3 location "," "+co_orodinates[0]+" "+co_orodinates[1]); 
    b2x=co_orodinates[0];b2y=co_orodinates[1]; 
    co_orodinates[0]=0;co_orodinates[1]=0; 

} 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    co_orodinates=new int[2]; 
    b1=(Button) findViewById(R.id.imageButton1); 
    b2=(Button) findViewById(R.id.imageButton2); 
    b3=(Button) findViewById(R.id.imageButton3); 

    b1.setOnClickListener(this); 
    b2.setOnClickListener(this); 
    b3.setOnClickListener(this); 

    bitmap = Bitmap.createBitmap(50, 100, Bitmap.Config.ARGB_8888); 
    canvas = new Canvas(bitmap); 
    Drawable drawable = new BitmapDrawable(bitmap); 
    Paint paint = new Paint(); 

} 
@Override 
public void onClick(View view) { 
    // TODO Auto-generated method stub 
    switch(view.getId()) 
    { 
    case R.id.imageButton2: 

//行應該從Button1的被吸引到BUTTON2

  break; 
    case R.id.imageButton3: 

//行應該從BUTTON2被吸引到BUTTON3

 break; 
    } 
} 

}

回答

0

也許你可以試試here提供的答案。我認爲你試圖發展的概念是一樣的。如果它有效,請給予答覆的原始人員一個贊成票!

+0

非常感謝@PsyGik的答案。我正在開發一種相同的應用程序。 我以前找不到那個問題。 – ThatMRFBat