2010-07-26 15 views
7

मैं एंड्रॉइड के लिए नया कॉमर हूं लेकिन जावा नहीं। मैं एक्सएमएल फ़ाइल के माध्यम से एंड्रॉइड में यूआई डिज़ाइन कर रहा हूं, उस पृष्ठ में मेरे पास 3 शीर्ष रैखिक हैं, मेरे शीर्ष लेआउट (पहले लीनियरलाउट) में मैंने कुछ छवि रखी है और आखिरी लेआउट में मैंने कुछ बटन रखे हैं, अब मुझे एक जगह रखना है कैनवास का उपयोग कर मेरे केंद्र लेआउट में सर्कल (लाल रंग का), मैंने एक अलग वर्ग लिखा है जो व्यू (कैनवास कैनवास) में देखें, मैंने एक सर्कल खींचा है।एक विशिष्ट LinearLayout में कैनवास कैसे जोड़ें?

 
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); 
    } 

} 

अब मैं दूसरी लेआउट को यह कैनवास लाने के लिए है, मेरी main.xml नीचे

 
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); 
      ................................... 
      ................................ 



    } 
} 

उत्तर

7

यहाँ दिखाया गया है कि मैं क्या आपके विचार शामिल करने के लिए किया था। अपने xml फ़ाइल के लिए एक नए लेआउट को जोड़ने के साथ

प्रारंभ, तो आप उस प्राप्त कर सकते हैं, और फिर आप इस तरह यह करने के लिए जोड़ सकते हैं:

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); 

इस उदाहरण mControls में एक ऐसा प्रतिरूप में जोड़ा जाता है है मुख्य गतिविधि लेआउट।

+0

हाय, कृपया, आप इसे mControls के अंदर केंद्रित कैसे रखेंगे? – user3290180

संबंधित मुद्दे