Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.nomtek.activities;
- import android.content.pm.ActivityInfo;
- import android.content.res.Configuration;
- import android.os.Bundle;
- import android.support.design.widget.FloatingActionButton;
- import android.support.v7.app.AppCompatActivity;
- import android.view.KeyEvent;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.view.View;
- import com.journeyapps.barcodescanner.CaptureManager;
- import com.journeyapps.barcodescanner.CompoundBarcodeView;
- /**
- * Created by matyj on 03.02.2016.
- */
- public class ToolbarCaptureActivity extends AppCompatActivity {
- private CompoundBarcodeView barcodeScannerView;
- private CaptureManager captureManager;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.capture_appcompat);
- FloatingActionButton rotateBarcodeScanner = (FloatingActionButton) findViewById(R.id.rotate_scanner);
- rotateBarcodeScanner.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- rotateScreen();
- }
- });
- barcodeScannerView = (CompoundBarcodeView)findViewById(R.id.scanner);
- captureManager = new CaptureManager(this, barcodeScannerView);
- captureManager.initializeFromIntent(getIntent(), savedInstanceState);
- captureManager.decode();
- }
- @Override
- protected void onResume() {
- super.onResume();
- captureManager.onResume();
- }
- @Override
- protected void onPause() {
- super.onPause();
- captureManager.onPause();
- }
- @Override
- protected void onDestroy() {
- super.onDestroy();
- captureManager.onDestroy();
- }
- @Override
- protected void onSaveInstanceState(Bundle outState) {
- super.onSaveInstanceState(outState);
- captureManager.onSaveInstanceState(outState);
- }
- @Override
- public boolean onKeyDown(int keyCode, KeyEvent event) {
- return barcodeScannerView.onKeyDown(keyCode, event) || super.onKeyDown(keyCode, event);
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.menu_barcode_scanner, menu);
- return true;
- }
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- if (item.getItemId() == R.id.rotate_button){
- rotateScreen();
- }
- return true;
- }
- private void rotateScreen(){
- final int orientation = getResources().getConfiguration().orientation;
- switch(orientation) {
- case Configuration.ORIENTATION_PORTRAIT:
- barcodeScannerView.pause();
- setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
- barcodeScannerView.resume();
- break;
- case Configuration.ORIENTATION_LANDSCAPE:
- barcodeScannerView.pause();
- setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
- barcodeScannerView.resume();
- break;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement