package com.example.embeded_report;

import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.Toast;

public class MainActivity extends Activity {

 int count = 0;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
       
        Button line = (Button)findViewById(R.id.btn_line);
        Button circle = (Button)findViewById(R.id.btn_circle);
        Button rect = (Button)findViewById(R.id.btn_rect);
        Button text = (Button)findViewById(R.id.btn_txt);
       
        //View v = (View)findViewById(R.id.action_settings);
       
        LinearLayout ii = (LinearLayout)findViewById(R.id.LinearLayout1);
       
        View v = null;
  CustomView cv = new CustomView(MainActivity.this, v.getId()); // v를 통해서 버튼값을 넘겨줌
       
        ii.removeViewAt(1); // 1번 이후 레이아웃 삭제
        ii.addView(cv);  // LinearLayout에 cv라는 View를 추가함
       
        line.setListener(ClickListener);
        circle.setListener(ClickListener);
        rect.setListener(ClickListener);
        text.setListener(ClickListener);
       
        //findViewById(R.id.btn_circle).setListener(new View.Listener(){
       
    }
   
   
   
    View.Listener ClickListener = new View.Listener(){
     
     public void (View v){
      switch(v.getId()){
      case R.id.btn_line :
       Toast.makeText(MainActivity.this, "Line Toast", Toast.LENGTH_SHORT).show();
       //count=0;
       break;
      case R.id.btn_circle :
       Toast.makeText(MainActivity.this,"Circle Toast",Toast.LENGTH_SHORT).show();
       //count=1;
       break;
      case R.id.btn_rect :
       Toast.makeText(MainActivity.this, "Rect Toast", Toast.LENGTH_SHORT).show();
       //count=2;
       break;
      case R.id.btn_txt :
       Toast.makeText(MainActivity.this, "Text Toast", Toast.LENGTH_SHORT).show();
       //count=3;
       break;
      }
     }
    };
   
   
    public class CustomView extends View{
  
     private int v;

  public CustomView(Context context, int v){
         super(context);
         this.v= v;
        }
     
     public void onDraw(Canvas canvas){ // 그리기를 수행하는 메소드
      canvas.drawColor(Color.LTGRAY);
      Paint pnt = new Paint();
      pnt.setColor(Color.BLUE);
      canvas.drawCircle(100,90,50,pnt);
      
      /*
      if(v == R.id.btn_line){
       pnt.setColor(Color.BLUE);
       canvas.drawLine(20, 10, 200, 50, pnt);
      }
      else if (v == R.id.btn_circle){
       pnt.setColor(Color.RED);
       canvas.drawCircle(100,90,50,pnt);
      }
      else if(v == R.id.btn_rect){
       pnt.setColor(0x800000ff);
       canvas.drawRect(10,100,200,170,pnt);
      }
      else if(v == R.id.btn_txt){
       pnt.setColor(Color.BLACK);
       canvas.drawText("Canvas Text", 10, 200,pnt);
      }
      */
      
     }
    }
   


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}

이거 오류는 없는데 실행이 되질 않아유...  아 답답행.. 안드로이드 일자 무식이라... ㅠㅠ..

버튼이 네개가 있는데

버튼이 눌리면 그 버튼에 해당되는 모양을 커스텀뷰에 보여주는 건데.. 잘 안되네유 ㅠㅠ.. 조언점..


 

횬님들.. 사랑해염...