2014-01-08 3 views
0

Я начал учиться разрабатывать приложения для ОС Android. Я пытаюсь нарисовать круг после того, как пользователь нажмет кнопку. Моя MainActivity выглядит следующим образом:ничья после нажатия кнопки Android

public class MainActivity extends Activity { 
EditText editText; 
String message; 
TextView display; 
ImageView transOutput; 
Paint paint; 
Canvas c; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    editText = (EditText) findViewById(R.id.editText1); 
    //display = (TextView)findViewById(R.id.display); 

    Button basic_button = (Button) findViewById(R.id.button1); 
    basic_button.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      c = new Canvas(); 
      c.drawColor(Color.CYAN); 
       // smooths 
      paint = new Paint(); 
      paint.setAntiAlias(true); 
      paint.setColor(Color.RED); 
      paint.setStyle(Paint.Style.STROKE); 
      paint.setStrokeWidth(4.5f); 
       // opacity 
       //p.setAlpha(0x80); // 
      c.drawCircle(50, 50, 30, paint); 

     } 
    }); 
} 

Я думал, что размещение функции рисования слушателя OnClick будет делать трюк. В конце концов я добавлю больше фигур. Что мне не хватает?

ответ

2

Если вам нужно создать новый холст, вы должны определить растровое изображение, на котором будет выполняться собственно рисование.

Bitmap b = Bitmap.createBitmap(100, 100, Bitmap.Config.ARGB_8888); 
Canvas c = new Canvas(b); 

http://developer.android.com/guide/topics/graphics/2d-graphics.html

+0

У меня также есть для установки в ImageView для того, чтобы это работало? – Viralgeek

+0

вы также можете создать собственное представление для этого, если хотите определить изображение. – mcd

Смежные вопросы