基於ZXing二維碼的使用幾行程式碼完成炫酷的效果
先來看效果圖怎樣,可以的話就留著用吧,開發中要的就是速度快,效果好,簡單易操作
1:在這裡寫個button按鈕用於啟動二維碼
2:這是開啟後的介面 左下角可以設定開啟燈光,右下角可以選擇相簿中的二維碼
一:喜歡的話往下看教你一步步實現,如果想把圖中的藍條換成雷達掃描類的只需要在佈局中新增SurfaceView然後在程式碼中簡單設定就可以了,我就不在這裡寫那個了原理一樣
1:新增jar包
compile ‘com.github.XuDaojie:QRCode-Android:v0.4.2’
2:一定把倉庫地址加上,很重要
3:許可權清單檔案
4;部分程式碼
下面是程式碼部分
MAinActivity部分
package com.lt.scantest2;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
private static final int REQUEST_QR_CODE = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button qrCodeBtn = (Button) findViewById(R.id.qrcode_btn);
qrCodeBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(MainActivity.this, SimpleCaptureActivity.class);
MainActivity.this.startActivityForResult(i, REQUEST_QR_CODE);
}
});
}
//處理掃描介面傳來的引數
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_QR_CODE && data != null) {
String result = data.getStringExtra("resultString");
int m = result.length();
if (!isNumeric(result) || m != 10) {
Tip.tipshort(mContext, "請掃描正確的二維碼或者條形碼");
} else {
tvKahao.setText(result);
cardNo = result;
// tvKahao.setSelection(cardNo.length());//將游標追蹤到內容的最後
}
}
}
SimpleCaptureActivity
package com.lt.scantest2;
import android.app.Activity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.v7.app.AlertDialog;
import android.text.TextUtils;
import android.widget.Toast;
import io.github.xudaojie.qrcodelib.CaptureActivity;
/**
* Created by xdj on 16/9/17.
*/
public class SimpleCaptureActivity extends CaptureActivity {
protected Activity mActivity = this;
private AlertDialog mDialog;
@Override
public void onCreate(Bundle savedInstanceState) {
mActivity = this;
super.onCreate(savedInstanceState);
}
@Override
protected void handleResult(String resultString) {
if (TextUtils.isEmpty(resultString)) {
Toast.makeText(mActivity, io.github.xudaojie.qrcodelib.R.string.scan_failed, Toast.LENGTH_SHORT).show();
restartPreview();
} else {
// if (mDialog == null) {
// mDialog = new AlertDialog.Builder(mActivity)
// .setMessage("寶貝考勤卡號為:" + resultString)
// .setPositiveButton("確定", null)
// .create();
// mDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
// @Override
// public void onDismiss(DialogInterface dialog) {
// restartPreview();
// }
// });
// }
// if (!mDialog.isShowing()) {
// mDialog.setMessage(resultString);
// mDialog.show();
// }
Intent intent = new Intent();
intent.putExtra("resultString", resultString);
setResult(1001, intent);
finish();
}
}
佈局檔案我就不貼瞭如果有需要的我給大家我的原始碼地址檢視全部
相關推薦
基於ZXing二維碼的使用幾行程式碼完成炫酷的效果
先來看效果圖怎樣,可以的話就留著用吧,開發中要的就是速度快,效果好,簡單易操作 1:在這裡寫個button按鈕用於啟動二維碼 2:這是開啟後的介面 左下角可以設定開啟燈光,右下角可以選擇相簿中的二維碼 一:喜歡的話往下看教你一步步實現,如果想把圖
php二維碼/26行程式碼製作php二維碼phpqrcode加grafika水印
歡迎大家加入討論 q裙827880170 用到的外掛有phpqrcode(二維碼的生成庫,自行百度)grafika(非常好用的圖片處理庫,自行百度) ```require_once "phpqrcode/phpqrcode.php";require_once 'grafika/src/autoloader
Android 基於Zxing二維碼掃描的光速實現
Android 十分鐘光速實現二維碼掃描 前言 在專案中要使用到二維碼的相關內容,我們第一時間想到的是使用大名鼎鼎的zxing或者ZBar開源框架: 除了這兩個有名的框架之外,還有@bingoogolapple大神的掃描庫 以及國外@dlaz
Zxing二維碼掃描
ram zxing oss lean 預覽 surface ott serial pac 源代碼地址 有問題能夠加QQ:312122330 之前對於Zbar的二位碼掃描。到項目上線以後才發現掃描過於靈敏。導致有時候掃描到半截就啟動了。 後來翻看ZXIN
Android項目實戰(四十四):Zxing二維碼切換橫屏掃描
pla xxx mage tde min bar 分享圖片 spl 發現 原文:Android項目實戰(四十四):Zxing二維碼切換橫屏掃描Demo鏈接 默認是豎屏掃描,但是當我們在清單文件中配置橫屏顯示的時候: <activity
Android ZXing二維碼掃一掃
大概效果如下 測試的時候使用6.0有點問題,點選掃一掃會出現閃退的現象,使用更高版本的就不會出現這種現象 具體解決方法可查詢度娘 因為在模擬器上測試部分效果沒有展示,但是在真機上測試過完全可以使用 注意一點 動態許可權 要在根的build.gradle裡面加入 在專案的build.gra
Zxing二維碼掃描的整合與優化
Zxing已經是一個很成熟的框架了,但它是用maven構建的專案,在以gradle為基礎的AS中整合起來總感覺不太方便。網上有很多種方式,我這裡主要採取了複製程式碼到自己專案中的方式,這樣有利於學習和擴充套件。 第一步:整合 官方專案地址:https://github.com
友盟整合第三方登入 + 登入註冊 + 跑馬燈 + Zxing二維碼
如圖: 第一步:建立工程 整合友盟第三方,建立工程時,包名:com.umeng.soexample 第二步:添加回調Activity 主要是qq和微信的回撥 第三步:匯入jar和res 將main資料夾以及platform(選擇你想使用的平臺即可)檔案下,對應的資原始檔和ja
zxing 二維碼大白邊一步一步修復指南(轉)
轉自:開源中國 小灰灰Blog 釋出於 2017/04/03 12:10 二維碼邊距修復 使用zxing生成二維碼時, 某些場景下,即便指定 padding 引數為0,依然有很大的白邊,本篇博文主要分析產生這個的原因,以及如何修復這個問題
zxing 二維碼、帶logo二維碼生成
<span style="font-size:18px;">普通二維碼生成</span><span style="font-size:18px;">public class ZxingEncoderUtil { /** * 生成二
二維碼之zxing二維碼解析圖片資源
前面講了如何利用zxing生成二維碼影象以及仿照新浪微博方式生成二維碼。接下來,就要開始談到如何利用zxing解析二維碼影象。 zxing針對不同開發平臺,都給出瞭解析二維碼的例子,我這裡只聊聊關於android系統的解析。 對於android手機來說,二維碼影象獲取方式有
Android Zxing二維碼掃描圖片拉伸、掃描框過小、掃描框擴大後(或不拉伸後)閃退問題
(一)Zxing二維碼掃描框大小調整 控制掃描框大小程式碼是在CameraManager類中 google在CameraManager類中設定掃描框大小主要在getFramingRect()中: private static final int MIN_F
zxing 二維碼掃描 配置和使用
二維碼掃描使用最多的主要有兩個庫:zbarSDK 和zxing 關於zbar的使用比較簡單,在這裡不多說了,對於zxing的使用就比較麻煩,雖然網上有很多關於zxing的使用方法,不過查了很多中文和英文的貼子。發現說的都不夠詳細,對與像我這樣第一次搞的新手來說差一步就錯了很
Zxing二維碼實現
更多幹貨 前言: 專案中我們也許只會用到二維碼的掃描和生成兩個功能,所以不必下載完整的jar包,使用簡化版的即可,下文可見。 這篇文章講述:1、如果快速在專案中整合zxing,實現掃描和生成二維碼功能 2、
微信小程式中含有二維碼或者小程式碼,導致稽核不通過的解決方案
案例:微信小程式中,存在一張分享海報,裡面有該小程式自己的小程式碼,然而在微信小程式開發規範 20180726 版本 沒有明確說明不能新增二維碼或者微信小程式碼。 這個稽核結果出現在 20180725 這一天,該小程式已經發布了2周,海報功能一直沒有變過,突然產生
Android ZXing二維碼、條形碼的生成和解析
ZXing(Zebra Crossing)是Google開發的一個二維碼解析和生成的開源庫。 近期的一個手錶專案需要用到二維碼生成,於是就研究了一下。實現起來很簡便,將jar包放入工程,就可以直接使用API了。 裝置將位置資訊更新給伺服器,在瀏覽器輸入URL訪問指定ID裝
zxing二維碼識別Helper類
封裝成Helper類,特此記載,也希望能幫助到後來者定義了一個回撥介面用於解碼後輸出結果,運行於新執行緒,如要進行UI操作自行呼叫Handler介面 public class CameraDecodeHelper implements SurfaceHolder.Callb
zxing二維碼不可以多次掃描
給大家看一下效果圖: 最近公司開發一個專案,一個購物的專案。用到了掃描獲取條形碼,挺簡單網上案例比較多,去誰那裡有可能copy一大堆,但是往往他就是一個演示的Demo和你的有很多差距,所以這就需要我們動腦子思考了,我們首先拿到人家的專案不要著急往自己的專案裡copy。我
android zxing二維碼橫屏改豎屏
1.修改manifest檔案,將CaptureActivity的screenOrentatino設為portrait。 2.攝像頭調整為豎向在CameraConfigurationManager類中新增如下方法: protected void setDisplayOr
android 和 phonegap(Cordova)互動使用Zxing二維碼掃描
android方面的配置:配置環境,下載、編譯Zxing原始碼,整合進專案 1、環境下載、安裝,編譯Zxing原始碼 下載Zxing原始碼地址:https://github.com/zxing/zxing 其中android資料夾下為一個功能應用,有