У меня есть настройка TableLayout и добавлена строка для включения кнопки и ImageView. ImageView - это просто цветовая точка. Я использовал стиль в прошлом с RelativeLayout и позиционировал изображение кнопки ImageView выше. Новое приложение, над которым я работаю, использует TableLayout, но когда я пытаюсь настроить кнопку с ImageView, это не позволит позиционировать. Этот параметр недоступен для TableLayout?Вид изображения над кнопкой в tablelayout
<TableLayout
android:id="@+id/TB1"
android:layout_width="250dp"
android:layout_height="match_parent"
android:layout_weight="1" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1" >
<Button
android:id="@+id/Scene1"
android:layout_width="100dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:background="@drawable/custom_scene_buttons"
android:text="Scene 1"
android:textColor="@drawable/white"
android:textSize="20sp" />
<ImageView
android:id="@+id/colordot1"
android:layout_width="21dp"
android:layout_height="21dp"
android:background="@drawable/circle" />
</TableRow>
Это код, который необходимо изменить.
Resources res = getResources();
final Drawable drawable = res.getDrawable(R.drawable.circle);
drawable.setColorFilter(Color.rgb(i, j, k), Mode.SRC_ATOP);
ImageView img = (ImageView) findViewById(R.id.colordot1);
img.setBackgroundDrawable(drawable);
Вот линейный вариант компоновки Я попытался
<LinearLayout android:orientation="vertical" >
<Button
android:id="@+id/Scene1"
android:layout_width="100dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:background="@drawable/custom_scene_buttons"
android:drawableRight="@drawable/circle"
android:text="Scene 1"
android:textColor="@drawable/white"
android:textSize="20sp" />
<ImageView
android:id="@+id/colordot1"
android:layout_width="21dp"
android:layout_height="21dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:background="@drawable/circle" />
</LinearLayout>
Цвет точки не отображается после добавления андроида: drawableRight = "@ drawable/circle" Я также разместил код, который я использую, чтобы изменить цветную точку. У меня есть 10 из них на макете, могу ли я сделать переносимый для изменения? – Bobby
Нечетный. Я думаю, вы можете альтернативно обернуть Button и ImageView в LinearLayout. Затем LinearLayout будет единственным дочерним элементом и столбцом TableRow. –
Линейная компоновка не даст мне возможность располагать точку поверх кнопки только рядом с ней. Спасибо за предложение. – Bobby