写Android引导页界面
时间: 2023-10-25 12:11:45 浏览: 41
以下是一个简单的Android引导页界面的示例:
1.创建一个新的Android项目,并在布局文件中添加一个ViewPager和一个指示器(Indicator):
```
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<LinearLayout
android:id="@+id/layout_indicator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_horizontal"
android:layout_alignParentBottom="true"
android:layout_marginBottom="20dp"/>
```
2.创建一个适配器(Adapter)来填充ViewPager的页面:
```
public class MyPagerAdapter extends PagerAdapter {
private Context mContext;
private int[] mImages;
public MyPagerAdapter(Context context, int[] images) {
mContext = context;
mImages = images;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
LayoutInflater inflater = LayoutInflater.from(mContext);
View view = inflater.inflate(R.layout.item_pager, container, false);
ImageView imageView = view.findViewById(R.id.image_view);
imageView.setImageResource(mImages[position]);
container.addView(view);
return view;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
@Override
public int getCount() {
return mImages.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
}
```
3.在Activity中设置ViewPager和指示器:
```
private ViewPager mViewPager;
private LinearLayout mLayoutIndicator;
private int[] mImages = {R.drawable.image1, R.drawable.image2, R.drawable.image3};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mViewPager = findViewById(R.id.view_pager);
mLayoutIndicator = findViewById(R.id.layout_indicator);
MyPagerAdapter pagerAdapter = new MyPagerAdapter(this, mImages);
mViewPager.setAdapter(pagerAdapter);
for (int i = 0; i < mImages.length; i++) {
ImageView dot = new ImageView(this);
dot.setImageResource(R.drawable.indicator_dot);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
params.setMargins(10, 0, 10, 0);
mLayoutIndicator.addView(dot, params);
}
mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {}
@Override
public void onPageSelected(int position) {
for (int i = 0; i < mLayoutIndicator.getChildCount(); i++) {
ImageView dot = (ImageView) mLayoutIndicator.getChildAt(i);
if (i == position) {
dot.setImageResource(R.drawable.indicator_dot_selected);
} else {
dot.setImageResource(R.drawable.indicator_dot);
}
}
}
@Override
public void onPageScrollStateChanged(int state) {}
});
}
```
其中,indicator_dot和indicator_dot_selected是两个指示器的图片资源。运行应用程序,就可以看到一个简单的引导页界面了。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)