From 65aaa93a270990f2cf98b0861d11132eab173a83 Mon Sep 17 00:00:00 2001 From: Amadeu Cavalcante Date: Mon, 15 Oct 2018 21:24:58 -0300 Subject: Added support for programmatically change ViewfinderView mask color --- .../src/main/java/example/zxing/CustomScannerActivity.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'sample/src/main/java/example') diff --git a/sample/src/main/java/example/zxing/CustomScannerActivity.java b/sample/src/main/java/example/zxing/CustomScannerActivity.java index 6d301baa..1c0de0cb 100644 --- a/sample/src/main/java/example/zxing/CustomScannerActivity.java +++ b/sample/src/main/java/example/zxing/CustomScannerActivity.java @@ -2,6 +2,7 @@ package example.zxing; import android.app.Activity; import android.content.pm.PackageManager; +import android.graphics.Color; import android.os.Bundle; import android.view.KeyEvent; import android.view.View; @@ -9,6 +10,9 @@ import android.widget.Button; import com.journeyapps.barcodescanner.CaptureManager; import com.journeyapps.barcodescanner.DecoratedBarcodeView; +import com.journeyapps.barcodescanner.ViewfinderView; + +import java.util.Random; /** * Custom Scannner Activity extending from Activity to display a custom layout form scanner view. @@ -19,6 +23,7 @@ public class CustomScannerActivity extends Activity implements private CaptureManager capture; private DecoratedBarcodeView barcodeScannerView; private Button switchFlashlightButton; + private ViewfinderView viewfinderView; @Override protected void onCreate(Bundle savedInstanceState) { @@ -30,6 +35,8 @@ public class CustomScannerActivity extends Activity implements switchFlashlightButton = (Button)findViewById(R.id.switch_flashlight); + viewfinderView = (ViewfinderView) findViewById(R.id.zxing_viewfinder_view); + // if the device does not have flashlight in its camera, // then remove the switch flashlight button... if (!hasFlash()) { @@ -87,6 +94,12 @@ public class CustomScannerActivity extends Activity implements } } + public void changeMaskColor(View view) { + Random rnd = new Random(); + int color = Color.argb(255, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256)); + viewfinderView.setMaskColor(color); + } + @Override public void onTorchOn() { switchFlashlightButton.setText(R.string.turn_off_flashlight); -- cgit v1.2.3 From 209e1c9a04725dd068a4e29c608315a3a7e9b378 Mon Sep 17 00:00:00 2001 From: Ralf Kistner Date: Fri, 2 Nov 2018 19:46:24 +0200 Subject: Remove redundant call; set random color on every launch in sample. --- sample/src/main/java/example/zxing/CustomScannerActivity.java | 4 +++- .../src/com/journeyapps/barcodescanner/ViewfinderView.java | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'sample/src/main/java/example') diff --git a/sample/src/main/java/example/zxing/CustomScannerActivity.java b/sample/src/main/java/example/zxing/CustomScannerActivity.java index 1c0de0cb..2292e59f 100644 --- a/sample/src/main/java/example/zxing/CustomScannerActivity.java +++ b/sample/src/main/java/example/zxing/CustomScannerActivity.java @@ -46,6 +46,8 @@ public class CustomScannerActivity extends Activity implements capture = new CaptureManager(this, barcodeScannerView); capture.initializeFromIntent(getIntent(), savedInstanceState); capture.decode(); + + changeMaskColor(null); } @Override @@ -96,7 +98,7 @@ public class CustomScannerActivity extends Activity implements public void changeMaskColor(View view) { Random rnd = new Random(); - int color = Color.argb(255, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256)); + int color = Color.argb(100, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256)); viewfinderView.setMaskColor(color); } diff --git a/zxing-android-embedded/src/com/journeyapps/barcodescanner/ViewfinderView.java b/zxing-android-embedded/src/com/journeyapps/barcodescanner/ViewfinderView.java index a3fbdfdd..7e035fb7 100755 --- a/zxing-android-embedded/src/com/journeyapps/barcodescanner/ViewfinderView.java +++ b/zxing-android-embedded/src/com/journeyapps/barcodescanner/ViewfinderView.java @@ -249,6 +249,5 @@ public class ViewfinderView extends View { public void setMaskColor(int maskColor) { this.maskColor = maskColor; - paint.setColor(resultBitmap != null ? resultColor : maskColor); } } -- cgit v1.2.3