Android-如何模拟按下按钮的灰色图像视图?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (98)

我的解决方案是覆盖两行相同的ImageViews。一层由所有黑色图标组成,一层由所有灰色图标组成。单击图像时,运行如下代码:

private void galleryClicked() {
        mGalleryImageView_unclicked.setVisibility(View.INVISIBLE);
        mPersonalImageView_unclicked.setVisibility(View.VISIBLE);
        mExploreImageView_unclicked.setVisibility(View.VISIBLE);
        mMenuImageView_unclicked.setVisibility(View.VISIBLE);

        mGalleryImageView_clicked.setVisibility(View.VISIBLE);
        mPersonalImageView_clicked.setVisibility(View.INVISIBLE);
        mExploreImageView_clicked.setVisibility(View.INVISIBLE);
        mMenuImageView_clicked.setVisibility(View.INVISIBLE);
    }

有没有其他什么好的解决方法?

提问于
用户回答回答于

使用选择器

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/clicked" android:state_enabled="true" />
    <item android:drawable="@drawable/unclicked" android:state_enabled="false" />
</selector>

只要用mGalleryImageView.setEnabled(true);或mGalleryImageView.setEnabled(false)

扫码关注云+社区

领取腾讯云代金券