我已经实现了一个自定义Listview,它是HorizontalListView。
这是HorizontalListView类: 所需的其他课程之一是:Utils
在上面两个类的帮助下,我在下面实现了HorizontalListView:
<com.example.myproject.HorizontalListView
android:id="@+id/imageList"
android:layout_width="wrap_content"
android:gravity="right"
android:layout_height="130dp"
android:layout_gravity="right"
android:layout_marginTop="10dp"
android:stackFromBottom="true"
android:layout_weight="1" />
但问题是,我没有把Listview放在右侧。我想要的是从右侧开始列表视图。但我不知道在哪里更新代码。
我曾尝试将重力设置为右侧的XML布局和JAVA类,但我没有得到正确的效果。
我没有从右侧开始列表视图。
任何人都可以帮我吗?
我想要像屏幕截图一样:
提前致谢。
我的其他XML代码如下:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_margin="5dp"
android:gravity="center_horizontal|center_vertical"
android:orientation="horizontal" >
<EditText
android:id="@+id/Idea_titleET"
style="@android:style/TextAppearance.Small"
android:layout_width="fill_parent"
android:layout_height="40dp"
android:background="@drawable/signup_edittext_backgroung"
android:cursorVisible="true"
android:ellipsize="start"
android:gravity="center_vertical|right"
android:hint="Title"
android:inputType="textCapWords"
android:maxLength="45"
android:paddingRight="5dp"
android:singleLine="true"
android:textColor="#000000" />
</LinearLayout>
<TextView
android:id="@+id/Idea_TitleEr"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="right"
android:paddingRight="6dp"
android:text="Title is required"
android:textColor="#ff0000"
android:textSize="10dp"
android:textStyle="italic"
android:visibility="invisible" />
<EditText
android:id="@+id/Idea_DescriptionET"
style="@android:style/TextAppearance.Small"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:background="@drawable/signup_edittext_backgroung"
android:gravity="top|right"
android:hint="Description"
android:maxLength="100"
android:maxLines="3"
android:padding="5dp"
android:textColor="#000000" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginRight="6dp"
android:layout_marginTop="10dp"
android:text="Upload Documents"
android:textColor="@color/grey"
android:textSize="18dp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="6dp"
android:gravity="right"
android:text="The document can be images(JPG, PNG) or Youtube videos(URL)"
android:textColor="@color/grey" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:orientation="vertical" >
<com.example.lc5plus.HorizontalListView
android:id="@+id/imageList"
android:layout_width="wrap_content"
android:layout_height="130dp"
android:layout_alignParentRight="true"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:gravity="right" />
</RelativeLayout>
</LinearLayout>
检查下图,查看我想要的内容:
在上图中,带有“+”符号的方格是我的水平列表视图。现在只添加了一个索引。但它显示在左侧。所以我想要的是,即使只有一个索引,它也应该显示在右侧。
答案 0 :(得分:0)
转换此
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:orientation="vertical" >
<com.example.lc5plus.HorizontalListView
android:id="@+id/imageList"
android:layout_width="wrap_content"
android:layout_height="130dp"
android:layout_alignParentRight="true"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:gravity="right" />
</RelativeLayout>
到
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:layout_gravity="right"
android:orientation="vertical" >
<com.example.lc5plus.HorizontalListView
android:id="@+id/imageList"
android:layout_width="wrap_content"
android:layout_height="130dp"
android:layout_alignParentRight="true"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:gravity="right" />
</LinearLayout>
试试吧,它可能会也可能不会奏效。试一试。
答案 1 :(得分:0)
android:stackFromBottom="false"
将其设为假,然后再试一次?
答案 2 :(得分:0)
只需在xml中稍加更改即可添加两行android:stackFromBottom="true"
和android:transcriptMode="normal"
,并将宽度设置为match_parent
,如下所示:
<com.example.myproject.HorizontalListView
android:id="@+id/imageList"
android:layout_width="match_parent"
android:layout_height="130dp"
android:stackFromBottom="true"
android:transcriptMode="normal"
android:layout_marginTop="10dp"
android:layout_weight="1" />
正如 yahya 所说,我注意到您的自定义水平列表视图未将 stackFromBottom 功能重写为 listview 覆盖此功能,请首先覆盖该功能,然后应用上面的代码。作为参考,您可以查看this link
希望这会有所帮助:)
答案 3 :(得分:0)
我无法看到你的横向列表视图代码,但是你确定你的横向列表视图支持stackFromBottom属性吗?否则你需要自己实现。
答案 4 :(得分:0)
如果你的意思是rtl,就这样使用:
android:layoutDirection="rtl"
全部:)