gpt4 book ai didi

Java:如何用另一个可绘制对象 overdraw ImageView 中的现有可绘制对象?

转载 作者:行者123 更新时间:2023-11-30 12:04:12 25 4
gpt4 key购买 nike

我有 Activity ,其中有 TextView ,如下所示:1/9 (holeCounter/holeNm)。我有 2 个 ImageView ,它们在 ImageView 中操作 holeCounter(添加或减少数字),左箭头图像表示减少,右箭头表示添加数字。现在,当我的 holeCounter == holeNm (9/9) 时,这个向右箭头的图像应该变成另一个图像。

注意:这些箭头图像是在该 Activity 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"

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

关于Java:如何用另一个可绘制对象 overdraw ImageView 中的现有可绘制对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57242457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com