在现实世界中,示例控制面板布局(下方)显示在其自己的FrameLayout(片段容器)中,并且(取决于应用程序是否在平板电脑上运行)与地图一起显示,其颜色由颜色选择器设置通过'颜色'按钮。 (注意:地图和控制面板有不同的背景。)
从颜色选择器返回时,关联的地图粒子和按钮背景将使用新颜色进行更新。
这个想法是(如用户所观察到的)按钮的颜色与地图完全匹配。
当然,它没有! (除非拾取的颜色有255-alpha)。
我知道这是'预期的行为'但是有一个聪明的(或'hacky')技巧会消除父背景(仅在Button子背后),以便正确渲染子背景颜色?
示例控制面板布局和代码
<LinearLayout android:id="@+id/settingsLL"
android:orientation="vertical">
<LinearLayout android:id="@+id/oneOfMany"
android:orientation="horizontal">
<TextView style="@style/wptedit_title" android:text="[some title]" />
<Button style="@style/wptedit_color" android:id="@+id/colorBtn" />
</LinearLayout>
</LinearLayout>
// Control panel background
settingsLL.setBackgroundColor(0xFFD5FFDD);
// Faint red tint gives desired map background not reflected by button
colorBtn.setBackgroundColor(0x04FF0000);
答案 0 :(得分:1)