2014-09-22 3 views
3

Как отобразить текст в центре неопределенного ProgressBar (прялки)?Как отобразить текст в центре неопределенного ProgressBar (прялки)?

Я хочу отображать секунды в центре. Использование андроида API-19. docs говорят, что для достижения прогресса необходимо использовать горизонтальную полосу. Однако, если я могу отображать текст в центре, то это будет работать для меня.

Итак, как я могу установить текст для отображения в строке хода вращающегося колеса?

(я бы предпочел, чтобы попытаться использовать существующий API перед запуском от построить пользовательский Bar Progress)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context="com.mycom.countdowntimer.CountdownMainActivity$PlaceholderFragment" > 

    <ProgressBar 
     android:id="@+id/progressBar1" 
     android:indeterminate="true" 
     style="?android:attr/progressBarStyleLarge" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="87dp" /> 
</RelativeLayout> 
+0

Добавить текстовое изображение в XML –

+0

@pedro где? см. xml выше – likejiujitsu

+0

Какой тип макета является родителем progressbar? –

ответ

7

Добавить текст в макете

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="5 s" 
    android:id="@+id/txt_secondsleft" 
    android:layout_alignRight="@+id/progressBar1" 
    android:layout_alignLeft="@+id/progressBar1" 
    android:gravity="center" 
    android:layout_alignBottom="@+id/progressBar1" 
    android:layout_alignTop="@+id/progressBar1" 
    /> 

Вы можете использовать его для отобразите текст, который хотите, и он будет центрирован на вашем индикаторе прогресса.

+0

отлично! Я не понимал, что текстовое изображение может отображаться в центре колеса, устанавливая значения выравнивания компоновки. – likejiujitsu

2

Я пробовал и нашел решение. Используйте xml, Он выровнят текст в центре колеса. Надеюсь, что это поможет вам.

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="horizontal" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="center" > 

     <ProgressBar 
      android:id="@+id/prograss_bar" 
      style="@android:style/Widget.ProgressBar.Large" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 

    <TextView 
     android:id="@+id/progress" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:gravity="center" 
     android:text="loading" /> 
</RelativeLayout> 
+0

+1, но принятый ответ был ранее. благодаря – likejiujitsu

Смежные вопросы