Adding attribute to control alpha of the banner background

This commit is contained in:
Maxime NATUREL 2022-07-25 10:36:28 +02:00
parent 732582b6fe
commit 5e59eb474a
4 changed files with 34 additions and 6 deletions

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="LocationLiveEndedBannerView">
<attr name="locLiveEndedBkgWithAlpha" format="boolean" />
</declare-styleable>
</resources>

View File

@ -17,9 +17,11 @@
package im.vector.app.features.location.live package im.vector.app.features.location.live
import android.content.Context import android.content.Context
import android.content.res.TypedArray
import android.util.AttributeSet import android.util.AttributeSet
import android.view.LayoutInflater import android.view.LayoutInflater
import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintLayout
import im.vector.app.R
import im.vector.app.databinding.ViewLocationLiveEndedBannerBinding import im.vector.app.databinding.ViewLocationLiveEndedBannerBinding
class LocationLiveEndedBannerView @JvmOverloads constructor( class LocationLiveEndedBannerView @JvmOverloads constructor(
@ -28,10 +30,28 @@ class LocationLiveEndedBannerView @JvmOverloads constructor(
defStyleAttr: Int = 0 defStyleAttr: Int = 0
) : ConstraintLayout(context, attrs, defStyleAttr) { ) : ConstraintLayout(context, attrs, defStyleAttr) {
private val binding = ViewLocationLiveEndedBannerBinding.inflate(
LayoutInflater.from(context),
this
)
init { init {
ViewLocationLiveEndedBannerBinding.inflate( context.theme.obtainStyledAttributes(
LayoutInflater.from(context), attrs,
this R.styleable.LocationLiveEndedBannerView,
) 0,
0
).run {
try {
setBackgroundAlpha(this)
} finally {
recycle()
}
}
}
private fun setBackgroundAlpha(typedArray: TypedArray) {
val withAlpha = typedArray.getBoolean(R.styleable.LocationLiveEndedBannerView_locLiveEndedBkgWithAlpha, false)
binding.locationLiveEndedBannerBackground.alpha = if (withAlpha) 0.75f else 1f
} }
} }

View File

@ -21,7 +21,8 @@
android:layout_height="48dp" android:layout_height="48dp"
app:layout_constraintBottom_toBottomOf="@id/locationLiveInactiveMap" app:layout_constraintBottom_toBottomOf="@id/locationLiveInactiveMap"
app:layout_constraintEnd_toEndOf="@id/locationLiveInactiveMap" app:layout_constraintEnd_toEndOf="@id/locationLiveInactiveMap"
app:layout_constraintStart_toStartOf="@id/locationLiveInactiveMap" /> app:layout_constraintStart_toStartOf="@id/locationLiveInactiveMap"
app:locLiveEndedBkgWithAlpha="true" />
<ImageView <ImageView
android:id="@+id/locationLiveInactiveIcon" android:id="@+id/locationLiveInactiveIcon"

View File

@ -10,7 +10,6 @@
android:id="@+id/locationLiveEndedBannerBackground" android:id="@+id/locationLiveEndedBannerBackground"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="48dp" android:layout_height="48dp"
android:alpha="0.75"
android:src="?android:colorBackground" android:src="?android:colorBackground"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"