我有一个包含自定义布局的布局。我想把风格从一个元素传递到另一个元素。我有一个膨胀布局的课程,如果需要我可以发布。这个设计元素由2种不同的布局添加,根据需要不同的尺寸。
Child layout
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="center_horizontal">
<TableRow android:layout_height="wrap_content" android:gravity="center_horizontal" android:layout_width="fill_parent" android:id="@+id/tableRow1">
<Button android:text="1" android:id="@+id/nb1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="40sp" android:layout_margin="1dip" android:minWidth="70dip"></Button>
<Button android:text="2" android:id="@+id/nb2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="40sp" android:layout_margin="1dip" android:minWidth="70dip"></Button>
<Button android:text="3" android:id="@+id/nb3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="40sp" android:layout_margin="1dip" android:minWidth="70dip"></Button>
</TableRow>
</TableLayout>
这是父布局
Parent Layout
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<pearsonartphoto.AJEG.number_viewer android:id="@+id/numberviewer" style="@style/bigViewer" android:layout_alignParentRight="true" android:layout_alignParentBottom="true">
</pearsonartphoto.AJEG.number_viewer>
</RelativeLayout>
我想要做的是传递一个样式,并通过所有子项或至少textView元素重复该样式。我需要做些什么才能实现这一目标?
答案 0 :(得分:3)
据我所知,android中没有办法继承子视图的父级样式,而不是仅仅嵌套它们!
您可以将样式应用于父级 比如说styleA,然后将一个样式应用于子元素让我们说styleB
并且继承可以在样式中完成,我的意思是styleB可以从styleA继承属性并覆盖他的一些父值
FILL_PARENT 包装内容 #00FF00 等宽
FILL_PARENT 包装内容 #00FF00 等宽
坏消息是你必须在每个儿童元素中加入样式:-(
我认为这是给某个元素赋予样式的唯一方法,如果你想给元素组赋予一个样式,你必须定义主题并将它应用于活动或应用程序,这通常在代码中完成但它也可以通过程序化方式完成。