레이아웃에 뷰를 두개를 추가했는데요
뷰를 처음에 추가하고 두번째 추가하면 앞에 추가한건 안보이게되나요?
뷰를 확장해서 커스텀뷰를 만들어서 2개를 뿌려줄려고 하는데 잘안되네요
조언 부탁드립니다.
========================================ChartView .java (메인)
public class ChartView extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
LinearLayout back = (LinearLayout)findViewById(R.id.back);
back.setBackgroundColor(Color.WHITE);
Chart chart = new Chart(this);
chart.setPointXYSTR(100,100,"75");
chart.setUpdown(true);
Chart chart2 = new Chart(this);
chart2.setPointXYSTR(200,100,"12");
chart2.setUpdown(true);
back.addView(chart);
back.addView(chart2);
}
}
========================================Chart.java
public class Chart extends View{
Paint paint;
private int pointX;
private int pointY;
private int isUpdown;
private int isUpdownStr;
private String str;
public void setPointX(int X) {
pointX=X;
}
public void setPointY(int Y) {
pointY=Y;
}
public void setStr(String value) {
str=value;
}
public int getPointX() {
return pointX;
}
public int getPointY() {
return pointY;
}
public void setPointXY(int X,int Y) {
pointX=X;
pointY=Y;
}
public void setPointXYSTR(int X,int Y,String value) {
pointX=X;
pointY=Y;
str=value;
}
public void setUpdown(boolean bool) {//말풍선이 위쪽인지 아래인지 셋팅
if(bool == true){
isUpdown = pointY - 80;
isUpdownStr = pointY - 35;
}else{
isUpdown = pointY + 10;
isUpdownStr = pointY + 10;
}
}
public Chart(Context conf)
{
super(conf);
}
protected void onDraw(Canvas canvas)
{
//페인트 셋팅
paint = new Paint(Paint.ANTI_ALIAS_FLAG);
paint.setColor(Color.BLACK);
paint.setStrokeWidth(6f);
//켄바스 배경색칠
//canvas.drawColor(Color.WHITE);
//점 동그라미 그리기
//canvas.drawPoint(pointX,pointY,paint);
canvas.drawCircle(pointX, pointY,5, paint);
//말풍선 샛팅
Resources r = getResources();
BitmapDrawable bd = (BitmapDrawable)r.getDrawable(R.drawable.b);
Bitmap bit = bd.getBitmap();
//말풍선 그리기
canvas.drawBitmap(bit, pointX-35,isUpdown, paint);
paint.setTextSize(30);
canvas.drawText(str, pointX-15, isUpdownStr , paint);
/*
for(i=X;i<Xplus;i+=5){
canvas.drawPoint(i,Y,paint);
}
for(i=X;i<Xplus;i+=5){
canvas.drawPoint(i,Yplus,paint);
}
for(i=Y;i<Yplus;i+=5){
canvas.drawPoint(X,i,paint);
}
for(i=Y;i<Yplus;i+=5){
canvas.drawPoint(Xplus,i,paint);
}
*/
}
}




이렇게 해보세요...