第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

試圖用對(duì)象填充屏幕

試圖用對(duì)象填充屏幕

MMTTMM 2022-10-07 16:25:06
看來(lái)我在理解課程方面有問(wèn)題。如果有人可以提供幫助,那就太好了。我正在嘗試用 3 個(gè)不同顏色的圓圈填充我的智能手機(jī)屏幕(android)。我的問(wèn)題是,通過(guò)使用下面的代碼,我只能得到一個(gè)(藍(lán)色)圓圈。我認(rèn)為問(wèn)題在于 y 值設(shè)置不正確,并且 3 個(gè)圓圈相互隱藏(因此只有藍(lán)色的圓圈可見(jiàn))。但是當(dāng)我記錄 3 個(gè)圓形對(duì)象的 y 值時(shí),y 值似乎是正確的(200,500,800)我在做什么錯(cuò)?提前感謝您的幫助。public class MainActivity extends Activity {    public Circle circleR;    public Circle circleG;    public Circle circleB;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        circleR = new Circle(this, 200, 255, 0, 0);        setContentView(circleR);        circleG = new Circle(this, 500, 0, 255, 0);        setContentView(circleG);        circleB = new Circle(this, 800, 0, 0, 255);        setContentView(circleB);    }}public class Circle extends View {    public Paint paint;    public int y;    public Circle(Context context,int y, int r, int g, int b){        super(context);        paint=new Paint();        paint.setColor(Color.rgb(r,g,b));        this.y=y;    }    @Override    protected void onDraw(Canvas canvas){        canvas.drawCircle(30, this.y,30, paint);    }}
查看完整描述

1 回答

?
至尊寶的傳說(shuō)

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊

問(wèn)題在于多次設(shè)置內(nèi)容視圖。只有最后設(shè)置的視圖(帶有藍(lán)色圓圈的視圖)可見(jiàn)。如果您希望多個(gè)圓圈同時(shí)可見(jiàn),您應(yīng)該在一個(gè)視圖內(nèi)的一個(gè)畫(huà)布上繪制它們。我重新排列了您的代碼,以便它執(zhí)行您想要的操作:


public class MainActivity extends Activity {


    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        CirclesView circlesView = new CirclesView(this);

        setContentView(circlesView);

    }

}

public class CirclesView extends View {


    public Circle circleR;

    public Circle circleG;

    public Circle circleB;


    public CirclesView(Context context) {

        super(context);


        circleR = new Circle(200, 255, 0, 0);

        circleG = new Circle(500, 0, 255, 0);

        circleB = new Circle(800, 0, 0, 255);

    }


    @Override

    protected void onDraw(Canvas canvas){

        circleR.draw(canvas);

        circleG.draw(canvas);

        circleB.draw(canvas);

    }

}

public class Circle {


    public Paint paint;

    public int y;


    public Circle(int y, int r, int g, int b) {

        paint = new Paint();

        paint.setColor(Color.rgb(r,g,b));


        this.y=y;

    }


    public void draw(Canvas canvas) {

        canvas.drawCircle(30, this.y,30, paint);

    }

}

Circle 知道如何在畫(huà)布上繪制自己,該畫(huà)布將由視圖提供給它。


查看完整回答
反對(duì) 回復(fù) 2022-10-07
  • 1 回答
  • 0 關(guān)注
  • 131 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)