實現步驟
1 布局檔案新增 android.support.v4.view.viewpager確定區域
2 建立viewpager mviewpager物件
mviewpager = (viewpager)findviewbyid(r.id.main_viewpager);
3 建立hashmapmap容器
hashmapmap = new hashmap();
map.put("itemimage", r.drawable.main_btn_radio);// 新增影象資源的id
map.put("itemtext", getstring(r.string.radio).tostring());// 按序號做itemtext
4 建立arraylist> lstimageitem
把hashmap物件新增到arraylist中 ,即lstimageitem.add(map);
如果是八宮格需新增八個hashmap物件到arraylist中,如此類推!
5 建立******adapter saimageitems物件
******adapter saimageitems = new ******adapter(this,
lstimageitem,// 資料列表
r.layout.item,// 每個宮格的布局
new string ,// 動態陣列與imageitem對應的子項
new int );// imageitem的xml檔案裡面的乙個imageview,乙個textview id
6 建立gridview gridview物件,把saimageitems 設定為gridview的介面
gridview.setadapter(saimageitems);
gridview.setnumcolumns(4);
gridview.setonitemclicklistener(this);
gridview.setontouchlistener(this);
7 建立arraylistmviewlist物件,把gridview新增到arraylist中
arraylistmviewlist = new arraylist();
mviewlist.add(gridview); //此時是一頁的資料
8 建立pageradapter mpageradapter物件,把arraylist的資料給pageradapter呼叫
//viewpager介面卡
mpageradapter = new pageradapter()
@override
public int getcount()
@override
public void destroyitem(view container, int position, object object)
@override
public object instantiateitem(view container, int position) };
9 把pageradapter設定為viewpager 的介面
mviewpager.setadapter(mpageradapter);
注意:pageradapter作為viewpager的介面卡介面時
頁面初始化後需呼叫notifydatasetchanged();通知資料改變!
mpageradapter.notifydatasetchanged();
過程:(至上而下)
viewpage--pageradapter--arraylist--gridview--******adapter--arraylist>--hashmap
禁止ViewPager左右滑動
有時候我們需要禁止掉viewpager的左右滑動,怎麼做呢,一般是自定viewpager。然後覆蓋viewpager的onintercepttouchevent motionevent arg0 方法和ontouchevent motionevent arg0 方法,這兩個方法的返回值都是boole...
使用ViewPager實現左右迴圈滑動及輪播效果
吃水不忘挖井人 讀了上文感覺思路挺不錯的,但是實踐的時候發現了一些問題。比如,開啟應用時banner並沒有自動開始輪播,因為handler中的if判斷把訊息給吃掉了。由此,我感覺這種處理方式並不是很好,出現重 訊息的問題,又通過其它方式來刪除掉這些訊息。我對 做了一下修改 1 刪除掉了以下這兩種訊息...
超炫的左右滑動效果 ViewPager的使用
1.範例說明 android support v4.jar,這是谷歌官方給我們提供的乙個相容低版本android裝置的軟體包,裡面包囊了只有在android 3.0以上可以使用的api。而viewpager就是其中之一,利用它我們可以做很多事情,從最簡單的導航,到頁面切換選單等等。viewpager...