Android 之 ImageView 示例

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >										<!-- 声明了一个垂直分布的线性布局 -->
	<ImageView
		android:id="@+id/iv"
		android:layout_width="wrap_content"
		android:layout_height="wrap_content"
		android:layout_gravity="center_horizontal"
		android:src="@drawable/p1"
		/>									<!-- 声明了ImageView控件  -->
	<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
		android:orientation="horizontal"
		android:layout_width="fill_parent"
		android:layout_height="wrap_content"
		android:layout_gravity="center_horizontal"
		>									<!-- 声明了一个水平分布的线性布局 -->
		<Button
			android:id="@+id/previous"
			android:text="@string/previous"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_gravity="center_horizontal"
			/>									<!-- 声明了一个Button控件 -->
		<Button
			android:id="@+id/alpha_plus"
			android:text="@string/alpha_plus"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_gravity="center_horizontal"
			/>									<!-- 声明了一个Button控件 -->
		<Button
			android:id="@+id/alpha_minus"
			android:text="@string/alpha_minus"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_gravity="center_horizontal"
			/> 									<!-- 声明了一个Button控件 -->
		<Button
			android:id="@+id/next"
			android:text="@string/next"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_gravity="center_horizontal"
			/>									<!-- 声明了一个Button控件 -->
	</LinearLayout>
</LinearLayout>

package com.ethan;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

public class ImageActivity extends Activity {
	ImageView iv;				//ImageView对象引用
	Button btnNext;				//Button对象引用
	Button btnPrevious;			//Button对象引用
	Button btnAlphaPlus;		//Button对象引用
	Button btnAlphaMinus;		//Button对象引用
	
	int currImgId = 0;			//记录当前ImageView显示的图片id
	int alpha=255;				//记录ImageView的透明度
	int [] imgId = {			//ImageView显示的图片数组
		R.drawable.p1,	
		R.drawable.p2,
		R.drawable.p3,
		R.drawable.p4,
		R.drawable.p5,
		R.drawable.p6,
		R.drawable.p7,
		R.drawable.p8,
	};
	
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        iv = (ImageView)findViewById(R.id.iv);			//获得ImageView对象引用
        btnNext = (Button)findViewById(R.id.next);		//获得ImageView对象引用
        btnPrevious = (Button)findViewById(R.id.previous);	//获得ImageView对象引用
        btnAlphaPlus = (Button)findViewById(R.id.alpha_plus);	//获得ImageView对象引用
        btnAlphaMinus = (Button)findViewById(R.id.alpha_minus);	//获得ImageView对象引用
        btnNext.setOnClickListener(myListener);			//为Button对象设置OnClickListener监听器
        btnPrevious.setOnClickListener(myListener);		//为Button对象设置OnClickListener监听器
        btnAlphaPlus.setOnClickListener(myListener);	//为Button对象设置OnClickListener监听器
        btnAlphaMinus.setOnClickListener(myListener);	//为Button对象设置OnClickListener监听器
    }
    
    private View.OnClickListener myListener = new View.OnClickListener(){//自定义的OnClickListener监听器
		@Override
		public void onClick(View v) {		//判断点下的是那个Button
			if(v == btnNext){				//下一张图片按钮被按下
				currImgId = (currImgId+1)%imgId.length;
				iv.setImageResource(imgId[currImgId]);	//设置ImageView的显示图片
			}
			else if(v == btnPrevious){		//上一张图片按钮被按下
				currImgId = (currImgId-1+imgId.length)%imgId.length;
				
				iv.setImageResource(imgId[currImgId]);	//设置ImageView的显示图片
			}
			else if(v == btnAlphaPlus){			//增加透明度按钮被按下
				alpha -= 25;
				if(alpha < 0){
					alpha =0;
				}
				iv.setAlpha(alpha);			//设置ImageView的透明度
			}
			else if(v == btnAlphaMinus){	//减少透明度按钮被按下
				alpha += 25;
				if(alpha >255){
					alpha = 255;
				}
				iv.setAlpha(alpha);			//设置ImageView的透明度
			}
		}
	};
}

源代码:http://115.com/file/bexjng5x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值