0

シークバーを使用して画像のサイズを変更したい。シークバーは機能していますが、良い結果が得られません。次のコードでは、画像のサイズが変更されますが、シークバーの進行状況を初めて変更したときだけです。助けてください

シークバーリスナー

seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onStopTrackingTouch(SeekBar arg0) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onStartTrackingTouch(SeekBar arg0) {
            // TODO Auto-generated method stub

        }

        @Override
        public void onProgressChanged(SeekBar seekBar, int progresValue,
                boolean fromUser) {
            // TODO Auto-generated method stub
            progresValue = progress;
            resizeImage(image, progresValue);
        }
    });

画像リサイズ機能

public void resizeImage(Bitmap bitmap, int progress) {
    Bitmap bitmapSource = bitmap;
    float bHeight = bitmapSource.getHeight();
    float bWidth = bitmapSource.getWidth();
    float factorH = progress / (float) bHeight;
    float factorW = progress / (float) bWidth;
    float factorToUse = (factorH > factorW) ? factorW : factorH;
    Bitmap bm = Bitmap.createScaledBitmap(bitmapSource,
            (int)(bWidth * factorToUse), (int)(bHeight * factorToUse),
            false);
    qImage.setImageBitmap(bm);
}
4

1 に答える 1