Bunun yerine, ImageView'ınızı çizim için bir tuval olarak almayı deneyin.
ImageView CanvasView = (ImageView) findViewById(R.id.fashion_pic)
Buradan kendi Bitmap oluşturabilir ve bir TouchEvent sonra yeniden çizin. Aşağıdaki Snippet'iniz gerekli çalışmaları-etrafında bir hata için 2.1 de içerdiği (veya 2.2, hatırlayamıyorum): Burada
public void redrawImage() {
Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.fashion_pic);
Bitmap proxy = Bitmap.createBitmap(bm.getWidth(), bm.getHeight(), Config.ARGB_8888);
Canvas c = new Canvas(proxy);
//Here, we draw the background image.
c.drawBitmap(bm, new Matrix(), null);
//Here, we draw the text where the user last touched.
c.drawText("Fashion", someGlobalXvariable, someGlobalYvariable, somePaint);
CanvasView.setImageBitmap(proxy);
}
, zaten arka planı ve boyalar metin olarak resminizi olan bir tuval oluşturduk x ve y değişkeninde. Gördüğünüz gibi
CanvasView.setOnTouchListener(new OnTouchListener(){
public boolean onTouch(View v, MotionEvent e) {
someGlobalXvariable = e.getX();
someGlobalYvariable = e.getY();
redrawImage();
return true;
}
});
, dinleyici otomatik dokunulduğunda görüntünüzü günceller ve metin kullanıcının parmağını takip edecek: Şimdi, bir OnTouchListener ayarlayın. Tuvaliniz olarak bir Bitmap kullandığınızdan, uygulamanızın bu tür işlevlere sahip olmak istiyorsa bir görüntüyü kaydetme/yükleme için destek de ekleyebilirsiniz.
Düzelt: Satırları 1-3 redrawImage()
'dan taşıyorsanız ve başka nesnelere yerleştirdiğinizde, bu nesneleri genel nesneler olarak ayarlayarak daha fazla performansa sahip olabilirsiniz. Bununla uğraşmana izin vereceğim.
Soru soruyorsanız, sorularınız için yanıt almak çok daha kolaydır. – CommonsWare
ohh anladım, sadece bir yol haritası istiyorum – Hunt