安卓5.0自帶左右滑動切換圖片的功能
成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),普蘭企業(yè)網(wǎng)站建設(shè),普蘭品牌網(wǎng)站建設(shè),網(wǎng)站定制,普蘭網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,普蘭網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
一、依次點 應(yīng)用程序---相冊
二、隨便點一張圖片
三、圖片不但可左右滑動切換,而且底部以黃色框顯示的縮略圖來顯示是哪一張圖片,比圓點顯示進步了很多。
什么叫無限滑動。。。你的意思是?有幾張圖片就自動有幾個暗色的點滑一張圖亮色的點就位移一下么
如果你是這個意思的話
首先滑動圖片用viewpager ?所有圖片id或者url都放到數(shù)組里
guesterIds?=?new?int[]{?R.drawable.guester,R.drawable.guester1,
R.drawable.guester3,R.drawable.guester4,R.drawable.guester5};
在初始化的時候分別初始化這些圖片和原點
下面這個代碼是初始化圖片生成imageview然后裝到viewpager的adpater里面
private?ImageView?buildImageView(int?id)?{
ImageView?iv?=?new?ImageView(this);
ImageLoader.getInstance().displayImage("drawable://"+id,iv,options);
//????????iv.setImageResource(id);
ViewGroup.LayoutParams?params?=?new?ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT);
iv.setLayoutParams(params);
iv.setScaleType(ScaleType.FIT_CENTER);
return?iv;
}
下面這個代碼是動態(tài)生成一個布局里面里面是圓點
dotView?=?new?ImageView(this);
dotView.setImageResource(R.drawable.dot2_w);
LinearLayout.LayoutParams?layoutParams?=?new?LinearLayout.LayoutParams(Util.dip2px(mContext,?20),
Util.dip2px(mContext,?10),?1.0f);
dotView.setLayoutParams(layoutParams);
dotView.setScaleType(ScaleType.FIT_CENTER);
dotContain.addView(dotView);
然后再每次滑動圖片的時候都從viewpager的監(jiān)聽中移動小圓點
pager.setOnPageChangeListener(new?ViewPager.SimpleOnPageChangeListener()?{
@Override
public?void?onPageSelected(int?position)?{
int?pos?=?position?%?guesterIds.length;
moveCursorTo(pos);
curPos?=?pos;
super.onPageSelected(position);
}
});
移動小圓點的方法其實就是以一個translation的動畫
private?void?moveCursorTo(int?position)?{
AnimationSet?animationSet?=?new?AnimationSet(true);
TranslateAnimation?tAnim?=
new?TranslateAnimation(offset?*?curPos,?offset?*?position,?0,?0);
animationSet.addAnimation(tAnim);
animationSet.setDuration(300);
animationSet.setFillAfter(true);
curDot.startAnimation(animationSet);
}
希望能啟發(fā)你的思路
自定義 ViewGroup 我有一個自定義的ScrollLayout 不知道怎么發(fā)給你 只需在布局里面設(shè)置
就能實現(xiàn)你這種效果 不知道怎么發(fā)給你
這是android的基本控件 gallery,網(wǎng)上搜一下相關(guān)demo很多的。另,如果想實現(xiàn)一滑就是一屏的那種,那就是要用到gridview + ViewGroup了s