import java.util.ArrayList;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
public class TestActivity extends Activity implements OnSeekBarChangeListener{
private ToneLayer mToneLayer;
private ImageView mImageView;
private Bitmap mBitmap;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
init();
}
private void init()
{
mToneLayer = new ToneLayer(this);
mBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.back1);
mImageView = (ImageView) findViewById(R.id.img_view);
mImageView.setImageBitmap(mBitmap);
((LinearLayout)findViewById(R.id.tone_view)).addView(mToneLayer.getParentView());
ArrayList<SeekBar> seekBars = mToneLayer.getSeekBars();
for (int i = 0, size = seekBars.size(); i < size; i++)
{
seekBars.get(i).setOnSeekBarChangeListener(this);
}
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
// TODO Auto-generated method stub
int flag = (Integer) seekBar.getTag();
switch (flag)
{
case ToneLayer.FLAG_SATURATION:
mToneLayer.setSaturation(progress);
break;
case ToneLayer.FLAG_LUM:
mToneLayer.setLum(progress);
break;
case ToneLayer.FLAG_HUE:
mToneLayer.setHue(progress);
break;
}
mImageView.setImageBitmap(mToneLayer.handleImage(mBitmap, flag));
}
@Override
public void onStartTrackingTouch(SeekBar arg0) {
// TODO Auto-generated method stub
}
@Override
public void onStopTrackingTouch(SeekBar arg0) {
// TODO Auto-generated method stub
}
}
//Activity
package com.app.bigbang;
import java.util.ArrayList;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
public class TestActivity extends Activity implements OnSeekBarChangeListener{
private ToneLayer mToneLayer;
private ImageView mImageView;
private Bitmap mBitmap;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
init();
}
private void init()
{
mToneLayer = new ToneLayer(this);
mBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.back1);
mImageView = (ImageView) findViewById(R.id.img_view);
mImageView.setImageBitmap(mBitmap);
((LinearLayout)findViewById(R.id.tone_view)).addView(mToneLayer.getParentView());
ArrayList<SeekBar> seekBars = mToneLayer.getSeekBars();
for (int i = 0, size = seekBars.size(); i < size; i++)
{
seekBars.get(i).setOnSeekBarChangeListener(this);
}
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
// TODO Auto-generated method stub
int flag = (Integer) seekBar.getTag();
switch (flag)
{
case ToneLayer.FLAG_SATURATION:
mToneLayer.setSaturation(progress);
break;
case ToneLayer.FLAG_LUM:
mToneLayer.setLum(progress);
break;
case ToneLayer.FLAG_HUE:
mToneLayer.setHue(progress);
break;
}
mImageView.setImageBitmap(mToneLayer.handleImage(mBitmap, flag));
}
@Override
public void onStartTrackingTouch(SeekBar arg0) {
// TODO Auto-generated method stub
}
@Override
public void onStopTrackingTouch(SeekBar arg0) {
// TODO Auto-generated method stub
}
}
//布局
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/img_view"
android:layout_gravity="center"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tone_view"
android:orientation="vertical"
/>
</LinearLayout>