你好,安卓人今天,我将分享一些关于如何在 Android 应用程序中创建图像滑块的提示。
外部库
我们将使用杰克·沃顿开发的 GitHub 库来完成我们的目标。
要将此库集成到 Android Studio 项目中,请将以下行插入到您的 build.gradle(模块:应用)文件中。
添加图像
显然,您需要一些图像来创建图像滑块。将四到五个图像添加到可绘制文件夹中。
视图寻呼器
您需要在此处使用 ViewPager 来制作滑块。
首先创建模型类。模型类类似于 ViewPager 的数据源。ViewPager 将获取要在每个滑块中显示的图像地址。
模型源代码的示例如下:
public class ImageModel {
private int image_drawable;
public int getImage_drawable() {
return image_drawable;
}
public void setImage_drawable(int image_drawable) {
this.image_drawable = image_drawable;
}
}
单个映像的 XML 布局
制作一个XML文件,描述每张幻灯片的布局文件 (UX/UI)。
注意:原始引用存在于ViewPager 示例中。它包括原始源代码下载在Android工作室和图像滑块的详细信息。
用于 ViewPager 的适配器类
适配器类的工作方式与 ListView 的适配器类相同。
类的函数调用的次数是图像总数的几倍。如果存在四个图像,则该方法将调用四次。
适配器类方法的示例:
@Override
public Object instantiateItem(ViewGroup view, int position) {
View imageLayout = inflater.inflate(R.layout.slidingimages_layout, view, false);
assert imageLayout != null;
final ImageView imageView = (ImageView) imageLayout
.findViewById(R.id.image);
imageView.setImageResource(imageModelArrayList.get(position).getImage_drawable());
view.addView(imageLayout, 0);
return imageLayout;
}
借助 setImageResource() 函数,您可以轻松地在 ImageView 中查找该图像设置。
此方法将调用多次,如前面所述。
最后,设置视图寻呼程序
现在请参见以下源代码:
mPager.setAdapter(new SlidingImage_Adapter(MainActivity.this,imageModelArrayList));
CirclePageIndicator indicator = (CirclePageIndicator)
findViewById(R.id.indicator);
indicator.setViewPager(mPager);
final float density = getResources().getDisplayMetrics().density;
//Set circle indicator radius
indicator.setRadius(5 * density);
NUM_PAGES =imageModelArrayList
设置当前项目(当前页*,true);
}
};
计时器滑动计时器 = 新计时器();
刷卡.计划(新的计时器任务)|
@Override
公共空隙运行() |
处理程序.post(更新);
}
}, 3000, 3000);
寻呼器侦听器超过指示器
指标.setOnPageChangeListener(新视图页页器.onpageChangeListener() |
@Override
公共空隙在Page选择(位置) |
当前页 = 位置;
}
@Override
公共空隙在PageScrolled(int pos,浮动arg1,int arg2) |
}
@Override
公共空白在PageScroll状态更改(int pos) |
}
});
如上文代码段所示,处理程序用于及时关注。您可以设置时间,其中一张幻灯片将显示给用户。例如,如果将其设置为两秒,则每张幻灯片将显示两秒。
您还可以控制用户的任务,如用户自行滑动图像等。以下是三种方法:
-
onPageSelected()
-
onPageScrolled()
-
onPageScrollStateChanged()
因此,这是如何在下一个 Android 应用中实现图像滑块。您可以访问原始源以了解更多信息并下载整个源代码。