gpt4 book ai didi

android - 将可绘制对象添加到 CirclePageIndicator

转载 作者:太空狗 更新时间:2023-10-29 15:14:31 27 4
gpt4 key购买 nike

如何将图像添加到圆形 pageindicator 而不是添加颜色..我尝试添加 iconpage 指示器但是点击方法不起作用但我可以添加图像..在 circlepageIndicator 中,onclick 方法有效,但如何添加可绘制的图像到 CIRCLEPAGE INDICATOR。下面是我的代码。

enter image description here

已使用的 CirclePageIndicator

       indicator  = (CirclePageIndicator)findViewById(R.id.indicatorMenu);
indicator.setViewPager(pagerMenu);

final float density1 = getResources().getDisplayMetrics().density;
indicator.setRadius(5 * density1);
indicator.setPageColor(0xFF000000);
indicator.setFillColor(0xFF888888);
indicator.setStrokeColor(0x880000FF);
indicator.setStrokeWidth(2 * density1);

//We set this on the indicator, NOT the pager
indicator.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
// Toast.makeText(HomeSpizzaView.this, "Changed to page " + position, Toast.LENGTH_SHORT).show();
// pagerMenu.setCurrentItem(position, false);
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});

indicator.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int currentItem = pagerMenu.getCurrentItem();
int totalItems = pagerMenu.getAdapter().getCount();
int nextItem = (currentItem + 1) % totalItems;
pagerMenu.setCurrentItem(nextItem);
Log.i("kkkkk", "getCurrentItem"+ nextItem);
Toast.makeText(HomeSpizzaView.this, "getCurrentItem"+ nextItem, Toast.LENGTH_SHORT).show();
}
});

已使用 IconPageIndicator

      mIndicator  = (IconPageIndicator)findViewById(R.id.indicator);
mIndicator.setViewPager(mPager);
mIndicator.setLongClickable(true);

//We set this on the indicator, NOT the pager
mIndicator.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
Toast.makeText(HomeSpizzaView.this, "Changed to page " + position, Toast.LENGTH_SHORT).show();
mPager.setCurrentItem(position, false);
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});


mIndicator.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
int currentItem = pagerMenu.getCurrentItem();
int totalItems = pagerMenu.getAdapter().getCount();
int nextItem = (currentItem + 1) % totalItems;
pagerMenu.setCurrentItem(nextItem);
Log.i("mmmmmmmmmmmm", "getCurrentItem"+ nextItem);
Toast.makeText(HomeSpizzaView.this, "getCurrentItem"+ nextItem, Toast.LENGTH_SHORT).show();

}

});

最佳答案

您可以使用 CirclePageIndicator 对象来自定义页面指示器。您可以设置图像或自定义颜色。您还可以使用 XML 自定义这些指标,您可以从给定的链接中找到示例 Android-ViewPagerIndicator's GitHub .如果你想使用图标或图像,那么你可以使用下面的类 SampleIconsDefault.java .来自给定的样本

关于android - 将可绘制对象添加到 CirclePageIndicator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13813623/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com