我试图在圆形进度条中放置两个文本视图,如下图所示。这两个文本应与圆形进度条的中心对齐。
但文本视图中不需要的填充阻止我将文本对齐到圆形进度条的中心。这就是我得到的。
这是我的布局文件:
<FrameLayout
android:id="@+id/onboarding_activity_progress_layout"
android:layout_gravity="center_horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp">
<com.locationlabs.finder.android.core.ui.CircularProgressBar
android:id="@+id/onboarding_activity_progress_bar"
android:layout_gravity="center"
android:padding="10dp"
android:layout_width="120dp"
android:layout_height="120dp"
app:progressColor="@color/progress_bar_color"
app:backgroundColor="@color/progress_bar_background_color"
app:progressBarWidth="10dp"
tools:progress="60"/>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:includeFontPadding="false"
android:layout_gravity="center">
<TextView
android:id="@+id/number_of_remaining_steps"
style="@style/OnboardingNumberOfRemainingStepText"
tools:text="2"/>
<TextView
android:id="@+id/remaining_number_of_steps"
style="@style/OnboardingRemainingStepText"
tools:text="steps left"/>
</LinearLayout>
</FrameLayout>
这是造型:
<style name="OnboardingNumberOfRemainingStepText">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_gravity">center_horizontal</item>
<item name="android:fontFamily">sans-serif</item>
<item name="android:textSize">40sp</item>
<item name="android:textColor">@color/dark_grey</item>
<item name="android:includeFontPadding">false</item>
</style>
<style name="OnboardingRemainingStepText">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_gravity">center_horizontal</item>
<item name="android:fontFamily">sans-serif-light</item>
<item name="android:textSize">16sp</item>
<item name="android:textColor">@color/dark_grey</item>
<item name="android:textStyle">normal</item>
</style>
我被告知android:includeFontPadding
可以帮助减少填充,但它没有那么多帮助。我也尝试使用带有Spannable的单个textView,但我得到了几乎相似的结果。我尝试使用负边距,但这不起作用,也不可靠。
答案 0 :(得分:0)
将TextView的样式属性传输到XML时,TextView可能会以意外方式呈现。这是因为TextView的默认样式应用于布局文件中,当您在其中使用 style 属性时会覆盖该布局文件。
您可以尝试在为TextView定义的样式中使用 parent =&#34; android:TextAppearance&#34; ,以确保继承TextView的预定义样式。
示例:
让我知道它是否适合你!