ImageView01.java:
package com.ImageView01;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ImageView;
import android.widget.TextView;
public class ImageView01 extends Activity {
private ImageView mImageView;
private TextView mTextView;
int image_alpha=255;
Handler mHandler=new Handler();
boolean isrung=true;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mImageView=(ImageView)findViewById(R.id.mImageView);
mTextView=(TextView)findViewById(R.id.mTextView);
//设置mImageView的图片资源,同样可以在xml布局中像下面这样写
//android:src="@drawable/logo"
mImageView.setImageResource(R.drawable.icon);
mImageView.setAlpha(image_alpha);
//开启一个线程让Alpha值递减
new Thread(new Runnable(){
public void run()
{
while(isrung)
{
try
{
Thread.sleep(200);
//更新alpha值
updateAlpha();
}
catch(InterruptedException e)
{
e.printStackTrace();
}
}
}
}).start();
//接收消息之后更新mImageView视图
mHandler=new Handler(){
@Override
public void handleMessage(Message msg)
{
super.handleMessage(msg);
mImageView.setAlpha(image_alpha);
mTextView.setText("alpha is:"+Integer.toString(image_alpha));
//更新
mImageView.invalidate();
}
};
}
public void updateAlpha()
{
if(image_alpha-7>=0)
{
image_alpha-=7;
}
else
{
image_alpha=0;
isrung=false;
}
//发送需要更新mImageView视图的消息
mHandler.sendMessage(mHandler.obtainMessage());
}
}
main.xml:
<?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"
>
<TextView
android:id="@+id/mTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/mImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>