我有一个以圆形为背景的relativeLayout。在relativeLayout里面,我有一个imageView(请看截屏) 我有一个MediaRecorder对象,该对象在按钮的onClick上开始记录。我想为“圆形”视图制作动画,该视图是基于mediaRecorder.maxAmptitude值的relativeLayout。
这是我的代码:
带有麦克风imageView的circleView
<RelativeLayout
android:id="@+id/circle_view"
android:layout_width="300dp"
android:layout_height="300dp"
android:layout_above="@+id/recording_options_layout"
android:background="@drawable/recording_mic_circle"
android:layout_centerHorizontal="true">
<ImageView
android:id="@+id/mic_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/ic_mic"
android:layout_centerInParent="true"/>
</RelativeLayout>
以及RelativeLayout的背景,它是一个形状:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<stroke
android:width="10dp"
android:color="#78d9ff"/>
</shape>
在我的活动中,我每500个工厂进行一次轮询以获取mediaRecorder.maxAmptitude值:
override fun onRecordingStarted() {
........
Observable.interval(500L, TimeUnit.MILLISECONDS)
.timeInterval()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe {
val maxAmptitude: Int = mediaRecorder.maxAmptitude
Timber.e("max amptitude $maxAmptitude")
//circle scale animation
}
.........
}
有人可以告诉我如何将mediaRecorder.maxAmptitude的值转换/转换为可用于scaleAnimation的浮点型吗?
提前谢谢