2010-07-26 19 views
7

Android için yeni biriyim ama java'ya değil. Ben XML dosyası aracılığıyla android UI tasarlıyor, ben bu sayfada 3 doğrusal Layouts var, benim üst düzeni (ilk LinearLayout) bazı görüntü tutmuş ve son düzeni bazı düğmeler tutmuş, şimdi bir yere tuvalimden ortadaki mizanpajın (kırmızı rengin) dairesi, View from inDraw (Tuval brandası) 'nın nerede olduğunu gösteren bir sınıf yazdım, bir çember çizdim.Belirli bir LinearLayout'ta Canvas nasıl eklenir?

 
package com.project.TargetTrackr3; 

import android.content.Context; 
import android.graphics.Canvas; 
import android.graphics.Color; 
import android.graphics.Paint; 
import android.view.View; 

public class DrawCanvasCircle extends View{ 
    public DrawCanvasCircle(Context mContext) { 
     super(mContext); 
    } 
    public void onDraw(Canvas canvas) { 
     Paint paint = new Paint(); 
     paint.setStyle(Paint.Style.FILL); 
     canvas.drawColor(Color.WHITE); 
     paint.setColor(Color.BLUE); 
     canvas.drawCircle(20, 20, 15, paint); 
    } 

} 

Şimdi ben ikinci düzene bu tuval getirmek zorunda, benim main.xml İşte

 
package com.project.TargetTrackr3; 

import android.app.Activity; 
import android.content.Context; 
import android.graphics.Canvas; 
import android.graphics.ColorFilter; 
import android.graphics.drawable.Drawable; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.LinearLayout; 
public class TargetTrackr3Activity extends Activity { 
    /** Called when the activity is first created. */ 
     protected LinearLayout ll; 
     DrawCanvasCircle c; 
     public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main1); //layouting file 
     ll = (LinearLayout) findViewById(R.id.LinearLayout_DrawCircle);//This is where i have to bring the canvas 
     c = new DrawCanvasCircle(this); 
      ................................... 
      ................................ 



    } 
} 

cevap

7

aşağıda gösterilmiştir Ben görünümünüzü dahil etmek bunu yaptı. xml dosyasına yeni bir düzen ekleyerek

Başlat, o zaman o alabilir ve daha sonra kendisine şöyle ekleyebilirsiniz: Bu örnekte mControls yılında

DrawCanvasCircle pcc = new DrawCanvasCircle (this); 
    Bitmap result = Bitmap.createBitmap(25, 25, Bitmap.Config.ARGB_8888); 
    Canvas canvas = new Canvas(result); 
    pcc.draw(canvas); 
    pcc.setLayoutParams(new LayoutParams(25, 25)); 
    mControls.addView(pcc); 

eklenen bir düzen olduğunu ana etkinlik düzeni.

+0

Merhaba, lütfen, mControls içinde ortalanmış nasıl koyarsınız? – user3290180

İlgili konular