Итак, я использую ImageView
, который перекрывает другой ImageView.
. По умолчанию непрозрачность или альфа-значение этого изображения установлено на 0,2f или что-то еще.Я хочу изменить прозрачность ImageView
, чтобы она была полностью видимой, когда я сдвигаю или помещаю курсор на это изображение.Я запускаю это приложение в эмуляторе Android Studio TV.Я прочитал документацию и другие решения, но они не работают.
Вот мой файл макета, где я использую два ImageViews, которые накладываются друг на друга.В этом случае второй является наложением.
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="350dp"
android:gravity="center">
<ImageView
android:id="@+id/premiumimageDescription"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/margin"
android:paddingRight="@dimen/margin"
android:scaleType="fitXY" />
<ImageView
android:focusable="true"
android:alpha="0.2"
android:id="@+id/trailerView"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_centerInParent="true"
android:adjustViewBounds="true"
android:src="@drawable/playbutton" />
</RelativeLayout>
Java-файл, где я использую метод focuschange
для изменения непрозрачности, когда курсор приходит к этому ImageView:
trailerView.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
switch (v.getId())
{
case R.id.trailerView:
if(hasFocus)
{
trailerView.getDrawable().setAlpha(1);
trailerView.getBackground().setAlpha(255);
trailerView.setImageAlpha(1);
}
else
{
trailerView.getBackground().setAlpha(50);
trailerView.setImageAlpha((int) 0.2);
}
}
}
});