2017-01-02 5 views
4

クリック可能なAndroidのレイアウト上で動的なバブルを作る方法は誰にもあります。Androidのダイナミックなバブルビューで

私のデザイナーは以下のように考えていました:[私はすべてのバブルはユーザーに割り当てられたタスクです。] [1]] [1]

私のプロジェクト要件によると、色と半径はAPIの応答ごとに変わります。

デモや例をお勧めしますか?私はそれをgoogledしかし、私はこれの答えを見つけることはできません。これを達成するために私を案内してください。

+0

このために何も役立たないと思います。あなたは一からすべてそれをしなければならないでしょう。キャンバスに描くサークルはかなり簡単ですが、あまりにも悪くはありません。カスタムビューを作成する方法を調べてください。 –

+0

@GabeSechanあなたはこれについていくつかの例をお勧めしますか? –

+0

キャンバスにすべてのビューを描画する必要があります。 – theLazyFinder

答えて

2

として、あなたはキャンバスに円を作成するために、さまざまなリンクをREFEREできる方法をカスタマイズ円に作成され、私もあなたのために試してみました。

public class BubbleBackgroundDemoActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     View view = new CustomView(this); 
//  RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(this.getWidth(), 
//    ViewGroup.LayoutParams.MATCH_PARENT); 
//  view.setLayoutParams(lp); 


     setContentView(view); 
    } 

    public class CustomView extends View { 

     private Paint paint; 
     int screenWidth, screenHeight; 



     public CustomView(Context context) { 
      super(context); 
      DisplayMetrics displaymetrics = new DisplayMetrics(); 

      getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); 


      screenWidth = displaymetrics.widthPixels; 
      screenHeight = displaymetrics.heightPixels; 

      // create the Paint and set its color 
      paint = new Paint(); 
      paint.setColor(Color.GRAY); 

     } 

     @Override 
     protected void onDraw(Canvas canvas) { 
      canvas.drawColor(Color.BLUE); 
      canvas.drawCircle(200, 200, 100, paint); 


      canvas.drawCircle(screenWidth-200, 200, 100, paint); 

      canvas.drawCircle(screenWidth/2, screenHeight/2, 300, paint); 

      canvas.drawCircle(screenWidth-200, screenHeight-200, 100, paint); 

      canvas.drawCircle(200, screenHeight-200, 100, paint); 

     } 

    } 

} 
+0

私はお手伝いします。ありがとう –

+0

素晴らしい作品は、作品を完璧に。それから私のもう一つの疑問は、どのように私はこのサークル上でクリックメソッドを与えることができ、同じ色の異なる色ですか? –

2

は、これは、1つの答えが既に掲載されて動的に

public class CustomView extends View { 

    private Paint paint; 

    public CustomView(Context context) { 
     super(context); 

     // create the Paint and set its color   
     paint = new Paint(); 
     paint.setColor(Color.GRAY); 
    } 

    @Override 
    protected void onDraw(Canvas canvas) { 
     canvas.drawColor(Color.BLUE); 
     canvas.drawCircle(200, 200, 100, paint); 
    } 

} 

public class MainActivity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(new CustomView(this)); 
    } 

} 
+0

これに感謝します。あなたは、私のガイドを教えてください。 –

+0

のCustomViewのようなカスタムビューを作成して、コンストラクタを作成し、位置x、y、および半径にパラメータを渡してください。 – siddhesh

+0

CustomViewオブジェクトを呼び出して円を作成してください – siddhesh

関連する問題