效果如圖:
在宜昌等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都做網(wǎng)站、網(wǎng)站制作 網(wǎng)站設(shè)計制作定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營銷推廣,成都外貿(mào)網(wǎng)站建設(shè),宜昌網(wǎng)站建設(shè)費用合理。
首先說下方的這幾個點,這個點不是圖片效果,而是Android自帶的shape畫的橢圓,使橢圓的寬高一樣,就變成原型,然后設(shè)置顏色即可。
這2個點的代碼如下:
紅色點的代碼
灰色點的代碼
整體思路:
1、要展示viewpager,就要先把圖片獲取,圖片是放在drawable-hdpi里的5張圖片。
2、把圖片放到一個list里,這個類似listview
3、利用viewpager的適配器,展示圖片
4、在圖片的適配器里根據(jù)位置加載每個圖片資源,同時把圖片下方的文字和選中的點顯示
5、同時在適配器里要銷毀已經(jīng)隱藏的圖片占用的資源
6、截止上一步,已經(jīng)可以滑動圖片了,但是圖片滑動時,文字和點沒有跟著變化,此時需要利用viewpage人的滑動監(jiān)聽,來處理文字變化和點的變化
7、viewpager有一個
viewpager.addOnPageChangeListener(new MyOnPageChangeListener());
監(jiān)聽,就new一個內(nèi)部類,在內(nèi)部類里通過圖片滑動時的回調(diào)方法來實現(xiàn)。具體代碼如下
MainActivity.java
package com.yuanlp.viewpager; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity { private static final String TAG = "MainActivity"; private ViewPager viewpager; private TextView tv_title; private LinearLayout ll_point_group; private Listp_w_picpathviews; //存放p_w_picpathview的集合,以便后期放入pageadapter中 //圖片資源ID private final int[] p_w_picpathIDs={ R.drawable.a, R.drawable.b, R.drawable.c, R.drawable.d, R.drawable.e }; //圖片標題集合 private final String[] p_w_picpathDescriptions={ "硅谷拔河比賽", "凝聚你我,放飛夢想", "抱歉,滿座了", "七月熱浪滔天", "加油努力學習" }; //上一次點位高亮顯示的位置 private int prePosition=0; //為了使廣告隔段時間自動切換下一張圖片,需要在此用到Handler private Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { int item=viewpager.getCurrentItem()+1; viewpager.setCurrentItem(item); //延遲發(fā)消息 handler.sendEmptyMessageDelayed(0,4000); } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); viewpager= (ViewPager) findViewById(R.id.viewpager); tv_title= (TextView) findViewById(R.id.tv_title); ll_point_group= (LinearLayout) findViewById(R.id.ll_point_group); p_w_picpathviews=new ArrayList (); MyPagerAdapter pagerAdapter=new MyPagerAdapter(); for (int i=0;i
當前名稱:viewpager實現(xiàn)廣告滑動及文字滑動和下方點的選中狀態(tài)改變
標題路徑:http://weahome.cn/article/jggsdp.html