2013-05-14 44 views
0

我想将我的CirclePagerIndicator设置在左侧。所以我在资源中使用了这段代码: android:layout_gravity = "left"我已经知道layout_gravity在parent linear_layout的方向为垂直时工作,但CirclePagerIndicator的布局位于centernot left。这是我的xml布局:layout_gravity不适用于我的CirclePagerIndicator

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" 
    android:paddingLeft="10dip" > 

    <LinearLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"" > 

     <LinearLayout 
      xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal" > 

      <ImageView 
       android:id="@+id/priority_icon" 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:visibility="gone" /> 

      <LinearLayout 
       android:layout_width="0dip" 
       android:layout_height="fill_parent" 
       android:layout_weight="1" 
       android:orientation="vertical" 
       android:paddingLeft="10dip" > 

       <TextView 
        android:layout_width="fill_parent" 
        android:layout_height="0dip" 
        android:layout_marginBottom="4dip" 
        android:layout_weight="2" 
        android:gravity="center_vertical" 
        android:lines="1" 
        android:singleLine="true" /> 

       <TextView 
        android:layout_width="fill_parent" 
        android:layout_height="0dip" 
        android:layout_marginBottom="4dip" 
        android:layout_weight="1" 
        android:gravity="center_vertical" 
        android:lines="1" 
        android:singleLine="true" /> 

      </LinearLayout> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="horizontal" > 

      <RelativeLayout 
       android:id="@+id/relative_container" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" > 

       <android.support.v4.view.ViewPager 
        xmlns:android="http://schemas.android.com/apk/res/android" 
        android:id="@+id/pager" 
        android:layout_width="80sp" 
        android:layout_height="100sp" /> 

       <ProgressBar 
        android:id="@+id/progress" 
        style="?android:attr/progressBarStyleSmallInverse" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerInParent="true" 
        android:visibility="visible" /> 
      </RelativeLayout> 

      <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" > 

       <TextView 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
        android:layout_marginLeft="10dip" 
        android:lines="1" 
        android:singleLine="true" 
        android:textColor="@color/BLACK" /> 

       <com.viewpagerindicator.CirclePageIndicator 
        android:id="@+id/indicator" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:paddingTop="10dip" 
        android:layout_gravity = "left" /> 
      </LinearLayout> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center" 
      android:orientation="horizontal" > 

      <ImageButton 
       android:id="@+id/time_reporting_btn" 
       android:layout_width="0dip" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:paddingTop="6dip" 
       android:src="@drawable/clock" 
       android:text="@string/time_reporting" /> 

      <ImageButton 
       android:layout_width="0dip" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:paddingTop="6dip" /> 
     </LinearLayout> 

     <ProgressBar 
      android:id="@+id/progressbar" 
      style="?android:attr/progressBarStyleHorizontal" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:max="100" 
      android:progress="0" /> 
    </LinearLayout> 

</LinearLayout> 

你能帮我吗?

回答

1

在设置了CirclePageIndicator的LinearLayout中,重力属性正在工作,但在其左侧放置了一个RelativeLayout,因此CirclePageIndicator不能位于左侧,因为在那里存在RelativeLayout。我不知道你是否在问这个问题,如果不是,请更好地解释一下

+0

是的,但然后CirclePageIndicator应该来到它的线性布局的左侧。 (相对布局的右侧)这就是问题所在。它成为线性布局的中心。 – Ali 2013-05-14 15:04:59

+0

我试过你的布局,它适合我。它位于linearLayout的左侧。 – ERed 2013-05-14 15:39:59

+0

感谢您抽出时间给我。 +1 – Ali 2013-05-14 18:06:04

1

它看起来像CirclePageIndicator尽可能地离开它。它只是在ViewPager的右侧布置在水平方向的LinearLayout之前,它是两者的祖父。

您应该在lint工具中查看此布局。你可以清理它很多...

+0

感谢您的提示。 +1 – Ali 2013-05-14 18:05:37

0
<com.viewpagerindicator.CirclePageIndicator 
    ::::::::::: 
    ::::::::::: 
    android:layout_alignParentLeft="true" 
    ::::::::::: 
    ::::::::::: />