我有一個ImageView在我的程序中用作按鈕。我需要它是一個ImageView,因爲我只想顯示圖像,而不是邊界。在onClick事件中更改ImageView圖像
這個按鈕是一盞燈,如果數據庫中的數據顯示它是可見的,那麼燈必須「亮」,當你點擊按鈕時,它將檢查銀行的數據,如果它處於打開狀態,則將其更改爲「關」反之亦然。
因此,圖像的變化將發生在onClick事件中。
這裏是我的代碼:
btnVisualizar.setClickable(true);
btnVisualizar.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
if (visivelBanco.getText().equals("Y")) {
btnVisualizar.setImageResource(this.getResources().getIdentifier(
"drawable/visible_off", null, this.getPackageName()));
} else {
btnVisualizar.setImageResource(
this.getResources().getIdentifier("drawable/visible_on", null, this.getPackageName()));
}
} catch (Exception e) {
Toast.makeText(
getBaseContext(),
"Falha ao modificar visibilidade do item!",
Toast.LENGTH_SHORT).show();
}
}
});
然而,編譯器無法識別的方法getResources()和getPackageName()。
我在做什麼錯?
任何幫助的讚賞。
你好Vikram ....謝謝你的幫助。那麼......這確實有助於編譯代碼,但即便如此,代碼並沒有改變圖像。這可能會改變OnClick事件中btnVisualizar的圖像。這裏是我的修改代碼感謝您的幫助:btnVisualizar.setImageResource(EdicaoActivity.this.getResources()。getIdentifier(「drawable/visible_off」,null,EdicaoActivity.this.getPackageName())); –