forked from suyu/suyu
android: Convert SettingsFrameLayout to Kotlin
This commit is contained in:
parent
c39bf17f83
commit
a29c615f8d
2 changed files with 43 additions and 48 deletions
|
@ -1,48 +0,0 @@
|
|||
package org.yuzu.yuzu_emu.features.settings.ui;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.AttributeSet;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
/**
|
||||
* FrameLayout subclass with few Properties added to simplify animations.
|
||||
* Don't remove the methods appearing as unused, in order not to break the menu animations
|
||||
*/
|
||||
public final class SettingsFrameLayout extends FrameLayout {
|
||||
private float mVisibleness = 1.0f;
|
||||
|
||||
public SettingsFrameLayout(Context context) {
|
||||
super(context);
|
||||
}
|
||||
|
||||
public SettingsFrameLayout(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
}
|
||||
|
||||
public SettingsFrameLayout(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||
super(context, attrs, defStyleAttr);
|
||||
}
|
||||
|
||||
public SettingsFrameLayout(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
||||
super(context, attrs, defStyleAttr, defStyleRes);
|
||||
}
|
||||
|
||||
public float getYFraction() {
|
||||
return getY() / getHeight();
|
||||
}
|
||||
|
||||
public void setYFraction(float yFraction) {
|
||||
final int height = getHeight();
|
||||
setY((height > 0) ? (yFraction * height) : -9999);
|
||||
}
|
||||
|
||||
public float getVisibleness() {
|
||||
return mVisibleness;
|
||||
}
|
||||
|
||||
public void setVisibleness(float visibleness) {
|
||||
setScaleX(visibleness);
|
||||
setScaleY(visibleness);
|
||||
setAlpha(visibleness);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,43 @@
|
|||
package org.yuzu.yuzu_emu.features.settings.ui
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.widget.FrameLayout
|
||||
|
||||
/**
|
||||
* FrameLayout subclass with few Properties added to simplify animations.
|
||||
* Don't remove the methods appearing as unused, in order not to break the menu animations
|
||||
*/
|
||||
class SettingsFrameLayout : FrameLayout {
|
||||
private val mVisibleness = 1.0f
|
||||
|
||||
constructor(context: Context?) : super(context!!)
|
||||
constructor(context: Context?, attrs: AttributeSet?) : super(context!!, attrs)
|
||||
|
||||
constructor(
|
||||
context: Context?,
|
||||
attrs: AttributeSet?,
|
||||
defStyleAttr: Int
|
||||
) : super(context!!, attrs, defStyleAttr)
|
||||
|
||||
constructor(
|
||||
context: Context?,
|
||||
attrs: AttributeSet?,
|
||||
defStyleAttr: Int,
|
||||
defStyleRes: Int
|
||||
) : super(context!!, attrs, defStyleAttr, defStyleRes)
|
||||
|
||||
var yFraction: Float
|
||||
get() = y / height
|
||||
set(yFraction) {
|
||||
val height = height
|
||||
y = (if (height > 0) yFraction * height else -9999) as Float
|
||||
}
|
||||
var visibleness: Float
|
||||
get() = mVisibleness
|
||||
set(visibleness) {
|
||||
scaleX = visibleness
|
||||
scaleY = visibleness
|
||||
alpha = visibleness
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue