Для моей задачи мне нужно создать список вроде this . Я использую WearableLinearLayoutManager со своим собственным LayoutCallback и получаю this . Что я делаю не так?
LayoutCallback
class CustomScrollingLayoutCallback : WearableLinearLayoutManager.LayoutCallback() {
override fun onLayoutFinished(child: View, parent: RecyclerView) {
child.apply {
val centerOffset = height.toFloat() / 2.0f / parent.height.toFloat()
val yRelativeToCenterOffset = y / parent.height + centerOffset
val progressToCenter = abs(0.5f - yRelativeToCenterOffset)
val imgPadding = progressToCenter * 150.4f
ivIcon.x = imgPadding
val iconBackPadding = imgPadding + ivIcon.width - vIconBack.width
vIconBack.x = iconBackPadding
val textDataMargin = 10
llDataContainer.x = iconBackPadding + vIconBack.width + textDataMargin
}
}
}
Может быть, вместо этого я должен использовать макет ограничения?
item. xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/item"
android:layout_width="match_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:layout_marginTop="4dp">
<View
android:id="@+id/vIconBack"
android:layout_width="100dp"
android:layout_height="match_parent"
android:x="-100dp"
android:background="@color/red"
android:orientation="horizontal"/>
<ImageView
android:id="@+id/ivIcon"
android:layout_width="50dp"
android:layout_height="match_parent"
android:src="@drawable/ic_add_white_24dp"
android:contentDescription="@string/icon" />
<LinearLayout
android:id="@+id/llDataContainer"
android:orientation="vertical"
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="match_parent">
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/black"
android:text="@string/some_text_1" />
<TextView
android:id="@+id/text2"
android:layout_width="wrap_content"
android:textColor="@color/black"
android:layout_height="wrap_content"
android:text="@string/some_text2" />
</LinearLayout>
</LinearLayout>
Полный проект: https://github.com/FirstSpectr/WearableTest