contact: 
Uki D. Lucas

Recent site activity

140d. Main.java - button wiring





package com.chicagoandroid.w140;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

public class Main extends Activity
{
private TextView scanResult;

private WebView webView;

@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
addScanButton();
webView = (WebView) findViewById(R.id.web_view);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("http://www.google.com/m/products?q=android");
}

private void addScanButton()
{
Button button = (Button) findViewById(R.id.scan_button);
button.setOnClickListener(new OnClickListener()
{

@Override
public void onClick(View v)
{
int requestCode = 0;
/**
* If requestCode >= 0, this code will be returned in
* onActivityResult() when the activity exits
*/
try
{
startActivityForResult(Scanner.scan(), requestCode);
} catch (Exception e)
{
String err = "Make sure that Barcode Scanner is installed from Market. ";
Log.e(Main.class.getCanonicalName(), err + e.getMessage());
Toast.makeText(getApplicationContext(), err, Toast.LENGTH_LONG).show();
}
}
});
}

public void onActivityResult(int requestCode, int resultCode, Intent intent)
{
scanResult = (TextView) findViewById(R.id.scan_results);
if (requestCode == -1)
{
scanResult.setText("Scan has been cancelled.");
return;
}
String code = intent.getStringExtra("SCAN_RESULT");
processUpc(code);
}

private void processUpc(String code)
{
if (code == null)
return;
scanResult.setText("Found code: " + code);
webView.loadUrl("http://www.google.com/m/products?q=" + code);
}
}