统一样式的View应该用style修饰

时间:2024-01-20 21:24:57

我们的应用中,常常有一些统一的组件,这时候应该用style来修饰。这样的话,修改起来也方便,代码也更简洁

比如,下面的代码,没有用style修饰

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" > <TextView android:textColor="@color/white"
android:layout_height="36dp"
android:layout_width="match_parent"
android:gravity="center_vertical" />
<TextView
android:id="@+id/tv_1"
android:textColor="@color/white"
android:layout_height="36dp"
android:layout_width="match_parent"
android:gravity="center_vertical"
/>
<TextView
android:id="@+id/tv_3"
android:textColor="@color/white"
android:layout_height="36dp"
android:layout_width="match_parent"
android:gravity="center_vertical" />
<TextView
android:id="@+id/tv_2"
android:textColor="@color/white"
android:layout_height="36dp"
android:layout_width="match_parent"
android:gravity="center_vertical" /> </LinearLayout>

下面的代码使用了style,更加简洁,也好维护

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" > <TextView
android:id="@+id/tv_0"
style="@style/text_style" />
<TextView
android:id="@+id/tv_1"
style="@style/text_style"
/>
<TextView
android:id="@+id/tv_2"
style="@style/text_style"/>
<TextView
android:id="@+id/tv_3"
style="@style/text_style" />
</LinearLayout> <!--styles.xml-->
<style name="text_style">
<item name="android:textColor">@color/white</item>
<item name="android:layout_height">36dp</item>
<item name="android:layout_width">match_parent</item>
<item name="android:gravity">center_vertical</item>
</style>