編輯:關於Android編程
main.xml<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwcmUgY2xhc3M9"brush:java;">
Main.java
package com.wty.mydemoviewflipper;
import android.app.Activity;
import android.os.Bundle;
import com.wty.mydemoviewflipper.wiget.ViewFlipperView;
public class Main extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new ViewFlipperView(this));
}
}
IAdImages.java
package com.wty.mydemoviewflipper.wiget;
import com.wty.mydemoviewflipper.R;
/**
* 圖片信息接口
* @author vhreal
*
*/
public interface IAdImages {
/**
* 廣告圖片
*/
int[] adImages = {
R.drawable.img01, R.drawable.img02, R.drawable.img03, R.drawable.img04, R.drawable.img05,
R.drawable.img06, R.drawable.img07, R.drawable.img08, R.drawable.img09, R.drawable.img10
};
}
ViewFlipperView.java
package com.wty.mydemoviewflipper.wiget;
import android.content.Context;
import android.view.Gravity;
import android.view.MotionEvent;
import android.view.animation.Animation;
import android.view.animation.TranslateAnimation;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ViewFlipper;
import com.wty.mydemoviewflipper.R;
/**
* 這是一個類似於ViewFlipper的Wiget。
* @author vhreal
*
*/
public class ViewFlipperView extends FrameLayout implements IAdImages {
private Context context; // 調用方的上下文
private int currentAdImgIndex; // 當前廣告圖片索引
private Animation left2RightInAnimation; // 廣告圖片從左到右進入屏幕動畫
private Animation left2RightOutAnimation; // 廣告圖片從左到右出去屏幕動畫
private Animation right2LeftInAnimation; // 廣告圖片從右到左進入屏幕動畫
private Animation right2LeftOutAnimation; // 廣告圖片從右到左出去屏幕動畫
private int animationDuration = 300; // 動畫花費時間1000毫秒
private ViewFlipper mViewFlipper; // 滑動頁面控件
private LinearLayout mTipLinearLayout; // 下方點點控件
private float startX = 0; // touch action down 時的x坐標
private float endX = 0; // touch action up 時的x坐標
public ViewFlipperView(Context context) {
super(context);
this.context = context;
setView();
}
/**
* 顯示View
*/
private void setView(){
// 初始化
int screenWidth = getResources().getDisplayMetrics().widthPixels;
mViewFlipper = new ViewFlipper(context);
mTipLinearLayout = new LinearLayout(context);
// 初始化動畫
left2RightInAnimation = new TranslateAnimation(-screenWidth, 0, 0, 0);
left2RightInAnimation.setDuration(animationDuration);
left2RightOutAnimation = new TranslateAnimation(0, screenWidth, 0, 0);
left2RightOutAnimation.setDuration(animationDuration);
right2LeftInAnimation = new TranslateAnimation(screenWidth, 0, 0, 0);
right2LeftInAnimation.setDuration(animationDuration);
right2LeftOutAnimation = new TranslateAnimation(0, -screenWidth, 0, 0);
right2LeftOutAnimation.setDuration(animationDuration);
// 將廣告圖片加入ViewFlipper
for(int i=0; i 0 && endX > startX){// 查看前一頁的廣告
mViewFlipper.setInAnimation(left2RightInAnimation);
mViewFlipper.setOutAnimation(left2RightOutAnimation);
mViewFlipper.showPrevious();
currentAdImgIndex--;
if(currentAdImgIndex < 0){
currentAdImgIndex = 0;
}
}
if(currentAdImgIndex < adImages.length-1 && endX < startX){// 查看後一頁的廣告
mViewFlipper.setInAnimation(right2LeftInAnimation);
mViewFlipper.setOutAnimation(right2LeftOutAnimation);
mViewFlipper.showNext();
currentAdImgIndex++;
if(currentAdImgIndex > adImages.length-1){
currentAdImgIndex = adImages.length-1;
}
}
// 根據currentAdImgIndex改變底部點的狀態
ImageView currTipImageView = (ImageView) mTipLinearLayout.getChildAt(currentAdImgIndex);
lastTipImageView.setImageResource(R.drawable.point_normal);
currTipImageView.setImageResource(R.drawable.point_selected);
break;
}
return true;
}
}
一、百度在線音樂旋轉木馬效果就上面那個,當音樂在播放的時候,那個光碟輪子在轉,就想旋轉木馬一般。感覺好好玩啊。碰巧想起前陣子做音樂播放器,哎,那這個也可以做在手機的音樂播
iMAG是一個非常簡潔高效的移動跨平台開發框架,開發一次可以同時兼容Android和iOS平台,有點兒Web開發基礎就能很快上手。當前移動端跨平台開發的框架有很多,但用i
第一個動畫文件btn_anim.xml 2-在res文件夾 anim文件夾下面,建立第二個文件layout_anim.xml):
本文實例講述了Android編程之OpenGL繪圖技巧。分享給大家供大家參考,具體如下:很久不用OpenGL ES繪圖,怕自己忘記了,於是重新復習一遍,順便原理性的東西總