Java:如何使用另一个可绘制的图片透支现有的图像绘制



我有活动的文本视图,看起来像这样:1/9(holecounter/holenm(。我有2个图像视图来操纵Holecounter(添加或减少数字(,在ImageView中,箭头左图表示还原,箭头右表示添加数字。现在,当我的holecounter == holenm(9/9(时,此箭头应变成另一个图像。

注意:这些箭头图像是在该活动中创建的XML文件,例如:

android:background="@drawable/ic_arrow_left"
android:background="@drawable/ic_arrow_right"

我现在拥有的:

private void setButtons() {
        mBackArrow = findViewById(R.id.previous);
        mForwardArrow = findViewById(R.id.next);
        mBackArrow.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (holeCounter > 1) {
                    Intent intent = getIntent();
                    mHoleNm = findViewById(R.id.gameHoleNumber);
                    holeCounter--;
                    mHoleNm.setText(holeCounter + "/" + intent.getStringExtra("HOLESNM"));
                }
            }
        });
        mForwardArrow.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = getIntent();
                int holesNm = Integer.parseInt(intent.getStringExtra("HOLESNM"));
                if (holeCounter == (holesNm - 1)) {
                    mForwardArrow.setImageResource(R.drawable.ic_finish);
                }
                if (holeCounter < holesNm) {
                    mHoleNm = findViewById(R.id.gameHoleNumber);
                    holeCounter++;
                    mHoleNm.setText(holeCounter + "/" + intent.getStringExtra("HOLESNM"));
                }
            }
        });
    }

现在,它在该箭头的顶部添加了新的可绘制的绘制,但是我希望该箭头在该新图像下消失。此外,如果用户单击左箭头,现在单击holecounter!= holenm,其他映像应该回到箭头右图像。

您必须使用android:src而不是android:background。替换下面的代码

android:background="@drawable/ic_arrow_left"
android:background="@drawable/ic_arrow_right"

to

android:src="@drawable/ic_arrow_left"
android:src="@drawable/ic_arrow_right"

最新更新