广告页动态添加指示圆点(不实现轮播)

来源:互联网 发布:威海淘宝培训 编辑:程序博客网 时间:2024/06/08 05:37

1.xml文件

<RelativeLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_main"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="com.learn.ren.myapplication.MainActivity">    <android.support.v4.view.ViewPager        android:id="@+id/viewpager"        android:layout_width="match_parent"        android:layout_height="match_parent"/>    <LinearLayout        android:id="@+id/layout"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_alignParentBottom="true"        android:layout_marginBottom="30dp"        android:gravity="center_horizontal"        android:orientation="horizontal"></LinearLayout></RelativeLayout>
2.adapter

public class Adapter extends PagerAdapter {   Context context;   //int[] list;    List<Integer> list;   public Adapter(Context context,List<Integer> list) {      this.context = context;      this.list=list;   }   @Override   public int getCount() {      return list.size();   }   @Override   public boolean isViewFromObject(View view, Object object) {      return view==object;   }   @Override   public Object instantiateItem(ViewGroup container, int position) {      ImageView iv=new ImageView(context);      iv.setImageResource(list.get(position));      iv.setScaleType(ImageView.ScaleType.FIT_XY);      container.addView(iv);      return iv;   }   @Override   public void destroyItem(ViewGroup container, int position, Object object) {       container.removeView((View) object);   }}
3.activity

public class MainActivity extends Activity implements ViewPager.OnPageChangeListener{    LinearLayout mLayout;    ViewPager mViewPager;    Adapter mAdater;    List<Integer> picList;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        initView();        initViewPager();        setIndicator();    }    /**     * 设置指示器     */    private void setIndicator() {        for(int i=0;i<picList.size();i++){            View v=new View(this);            LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(30,30);            params.leftMargin=20;            v.setLayoutParams(params);            v.setBackgroundResource(R.drawable.indicatorselector);            mLayout.addView(v);        }        mLayout.getChildAt(0).setEnabled(false);    }    private void initViewPager() {        mViewPager.setOnPageChangeListener(this);    }    private void initView() {        mLayout= (LinearLayout) findViewById(R.id.layout);        mViewPager= (ViewPager) findViewById(R.id.viewpager);        picList=new ArrayList<>();        picList.add(0,R.mipmap.car1);        picList.add(1,R.mipmap.car2);        picList.add(2,R.mipmap.car3);        picList.add(3,R.mipmap.wlecom);        picList.add(4,R.mipmap.welcome2);        picList.add(5,R.mipmap.welcome3);        mAdater=new Adapter(this,picList);        mViewPager.setAdapter(mAdater);    }    int prePos;    @Override    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {    }    @Override    public void onPageSelected(int position) {        mLayout.getChildAt(position).setEnabled(false);//显示蓝色        mLayout.getChildAt(prePos).setEnabled(true);//显示灰色        prePos=position;    }    @Override    public void onPageScrollStateChanged(int state) {    }}

0 0
原创粉丝点击