ViewPager图库图像布局问题

时间:2016-01-02 07:36:11

标签: android android-layout android-gui

我面临的问题是下面的android页面布局我的视图寻呼机图像没有占用大约60%的区域图像在视图寻呼机库中看起来非常小。 看起来像viewpager的scrollview有一些问题,但无法弄清楚如何解决这个问题。我附上了结果页面的屏幕截图。 请提供宝贵的建议如何实现。 感谢

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

    <TextView
        android:id="@+id/txtTitle"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textStyle="normal"
        android:textSize="22sp"
        android:padding="5dp"
        style="@style/news_page_font2"
        android:text="@string/blank"/>

    <ScrollView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:fillViewport="true"
        android:layout_weight="1"
        >

        <LinearLayout
            android:orientation="vertical"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            >
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="3"
                android:orientation="horizontal">

                <ImageView
                    android:id="@+id/prev"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:layout_weight="0.1"
                    android:contentDescription="@string/app_name"
                    android:src="@drawable/previous_item" />

                <android.support.v4.view.ViewPager
                    android:id="@+id/view_pager"
                    android:layout_width="0dp"
                    android:layout_height="fill_parent"
                    android:layout_weight="0.8">
                </android.support.v4.view.ViewPager>

                <ImageView
                    android:id="@+id/next"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:layout_weight="0.1"
                    android:contentDescription="@string/app_name"
                    android:src="@drawable/next_item" />
            </LinearLayout>

            <LinearLayout
                android:orientation="vertical"
                android:layout_width="fill_parent"
                android:layout_height="0dp"
                android:layout_weight="2"
                >
                <TextView
                    android:id="@+id/txtDate"
                    android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:textStyle="italic"
                    android:textSize="12sp"
                    android:padding="5dp"
                    style="@style/news_page_font"
                    android:text="@string/blank" />

                <ScrollView
                    android:id="@+id/horizontalScrollView1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignParentLeft="true"
                    android:layout_alignParentTop="true"
                    android:scrollbars="none" >

                    <TextView
                        android:id="@+id/txtdesc"
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:textStyle="italic"
                        android:textSize="21sp"
                        android:padding="7dip"
                        style="@style/news_page_font"
                        android:text="@string/blank"/>
                </ScrollView>
            </LinearLayout>
        </LinearLayout>
    </ScrollView>

    <LinearLayout
        android:id="@+id/adbar"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >
    </LinearLayout>

</LinearLayout>

来自java文件的代码,它将图像附加到动态查看寻呼机:

@Override
    public Object instantiateItem(ViewGroup container, int position) {
        ImageView imageView = new ImageView(context);
         .
         .
        ((ViewPager) container).addView(imageView, 0);

        return imageView;
    }

result page from the above layout

2 个答案:

答案 0 :(得分:0)

在您在Viewpager中使用的imageview中使用android:scaleType =“fitXY”

答案 1 :(得分:0)

<RelativeLayout 
    android:id="@+id/imagelayout11"
    android:layout_width="fill_parent"
    android:layout_height="150dp">


<android.support.v4.view.ViewPager
    android:id="@+id/imagelayout"
    android:layout_width="fill_parent"
    android:layout_height="150dp"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true" >

    <ImageView
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:scaleType="fitXY"/>
</android.support.v4.view.ViewPager>

       <!-- pager indicators --> 
                                     <RelativeLayout 
                                           android:layout_width="wrap_content"
                                           android:layout_height="20dp"
                                           android:layout_alignParentBottom="true"
                                           android:layout_marginBottom="10dp"
                                           android:layout_centerHorizontal="true"
                                            >


                                           <ImageView
                                                android:id="@+id/dot1"
                                                android:layout_width="10dp"
                                                android:layout_height="10dp"
                                                android:background="@drawable/viewpageroff"
                                            />
                                              <ImageView
                                                    android:id="@+id/dot2"
                                                    android:layout_width="10dp"
                                                    android:layout_height="10dp"
                                                    android:layout_toRightOf="@+id/dot1"
                                                    android:layout_marginLeft="5dp"
                                                    android:background="@drawable/viewpageroff"
                                            />
                                                 <ImageView
                                                        android:id="@+id/dot3"
                                                        android:layout_width="10dp"
                                                        android:layout_height="10dp"
                                                        android:layout_toRightOf="@+id/dot2"
                                                        android:layout_marginLeft="5dp"
                                                        android:background="@drawable/viewpageroff"
                                            />
                                    </RelativeLayout> 
</RelativeLayout>

//使用此适配器在viewpage中设置图片

class CustomPager extends PagerAdapter
{
    @Override
    public int getCount() {
        return pagerimages.length;
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view== ((LinearLayout) object);
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        LayoutInflater inflater=getLayoutInflater();
        View view=inflater.inflate(R.layout.pager_item, container, false);
        ImageView imgvvv=(ImageView)view.findViewById(R.id.imageView);
       // ImageView profilepic=(ImageView)view.findViewById(R.id.profilepiccc);
  //profilepic.setImageResource(profilepicture[position]);
//            roundimagee=new RoundImage(profilepic);

        imgvvv.setImageResource(pagerimages[position]);
        container.addView(view);
        return view;
    }
    @Override
    public void destroyItem(View container, int position, Object object) {
        // TODO Auto-generated method stub
        ((ViewPager) container).removeView((ViewGroup) object);
    }
}