友
我是android的新手,所以我可以使用你的帮助。我想实现一个用户可以在两个图像之间切换的图库(在下面的ImageView1中显示)。我想要的显示由:
[TextView1] [TextView2]
[ImageView1]
[ImageView2]
其中[TextView1]和[TextView2]是静态文本,不会因两个图像之间的翻转而改变。 [ImageView1]是显示的实际图像,[ImageView2]是图像指示器(即选择图像1)。
我使用ViewPager将图像绑定到[ImageView1],如下所示:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="10dp"
android:paddingRight="10dp" >
<ImageView
android:id="@+id/image_to_show"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="0dp"
android:contentDescription="@string/image_description"
android:scaleType="fitCenter" />
</RelativeLayout>
显示图像的主要片段:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/name_of_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="10dp"
android:textColor="@color/card_text_color"
android:textSize="14sp" />
<TextView
android:id="@+id/date_taken"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:paddingBottom="10dp"
android:textColor="@color/card_text_color"
android:textSize="14sp" />
<android.support.v4.view.ViewPager
android:id="@+id/details_image"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="10dp"
android:paddingTop="10dp" />
<LinearLayout
android:id="@+id/page_indicator_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="horizontal"/>
</RelativeLayout>
代码的输出是:
[TextView1] [TextView2]
[ImageView2]
[ImageView1]
图像和页面指示符的位置相反。
我有什么想法可以解决这个问题?
我不希望视图之间有任何垂直空间。我使用LinearLayout
而不是RelativeLayout
作为主片段,但根据屏幕尺寸在视图之间留下了空间。
答案 0 :(得分:0)
请尝试这种方式,希望这有助于您解决问题。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1">
<TextView
android:id="@+id/name_of_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/card_text_color"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1">
<TextView
android:id="@+id/date_taken"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/card_text_color"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
<android.support.v4.view.ViewPager
android:id="@+id/details_image"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:paddingBottom="10dp"
android:paddingTop="10dp" />
<LinearLayout
android:id="@+id/page_indicator_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="horizontal"/>
</LinearLayout>
答案 1 :(得分:0)
执行此操作
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="TextView1" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="TextView1" />
</LinearLayout>
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
使用此
更改您的代码