解决Viewpage老是满屏显示问题

在开发新闻APP中,使用Viewpage控件时遇到了全屏显示的问题。通过修改Viewpage在RelativeLayout或LinearLayout中的布局属性,可以避免全屏显示。在RelativeLayout中,设置Viewpage位于特定布局下方;在LinearLayout中,指定排列方式为垂直,即可解决问题。
摘要由CSDN通过智能技术生成

最近着力开发新闻APP(赛灵通)中,在阅览新闻时所需要上下篇切换问题,起初我所用到的是Viewfillper,该控件可达到滑动效果,但太欠缺于美观。大家都懂,智能机本来就是个精细化的东西,而它的应用也需遵从这点,否则就是不合格!所以当我们想以滑动的方式来切换页面首选就是Viewpage这个控件了,其次就是Viewfillper。二者的不同在于滑动效果不一样,前者更注重于过程能够很唯美丶自然的滑动;而后者主要是结果,手指一滑犹如直接跳转一般。

 

       Viewpage这个控件在开发布局中默认是覆盖其它控件的,也就是说它会全屏显示。这让我们很困扰,就我个人遇到的问题并得以解决,其实也就这样,只是不要忽视那些不常用的属性就好了。(RelativeLayout,LinearLayout)

      

    RelativeLayout是常用布局之一,我的布局大概是这样:父布局当然是RelativeLayout;子布局有RelativeLayout和Viewpage,当然RelativeLayout也包含了子布局,但在此不影响整个布局。RelativeLayout可不做改变(包含父、子)只需对

Viewpage改动代码如下:

 

             

要在viewpage显示指定的图片,你可以按照以下步骤操作: 1. 在你的项目中创建一个包含所有要显示的图片的文件夹。 2. 将这些图片添加到你的项目中。 3. 在你的布局文件中,使用ViewPager组件来创建一个包含多个页面的视图。 4. 创建一个适配器(Adapter),用于将图片加载到ViewPager中。 5. 在适配器中,将每个页面与一个特定的图片关联。 6. 将适配器设置为ViewPager的适配器(Adapter)。 以下是一个简单的示例代码,可以帮助你实现在ViewPager中显示指定的图片: ``` xml <!--activity_main.xml--> <androidx.viewpager.widget.ViewPager android:id="@+id/viewPager" android:layout_width="match_parent" android:layout_height="match_parent"/> ``` ``` java //MainActivity.java public class MainActivity extends AppCompatActivity { private ViewPager viewPager; private int[] images = {R.drawable.image1, R.drawable.image2, R.drawable.image3}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); viewPager = findViewById(R.id.viewPager); MyPagerAdapter adapter = new MyPagerAdapter(this, images); viewPager.setAdapter(adapter); } } class MyPagerAdapter extends PagerAdapter { private Context context; private int[] images; public MyPagerAdapter(Context context, int[] images) { this.context = context; this.images = images; } @Override public int getCount() { return images.length; } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } @Override public Object instantiateItem(ViewGroup container, int position) { ImageView imageView = new ImageView(context); imageView.setImageResource(images[position]); container.addView(imageView); return imageView; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((ImageView) object); } } ``` 在这个示例中,我们首先在activity_main.xml布局文件中创建了一个ViewPager组件。然后在MainActivity.java中,我们使用MyPagerAdapter适配器将图片加载到ViewPager中。最后,我们设置MyPagerAdapter为ViewPager的适配器(Adapter)。在适配器中,我们使用instantiateItem()方法将每个页面与一个特定的图片关联,并使用destroyItem()方法在不再需要时将其删除。 你可以将上面的代码复制到你的项目中,并按照你的需要修改适配器(Adapter)中的图片列表(images)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值