Android ZxingPlus精簡(jiǎn)的二維碼框架示例代碼
這個(gè)二維碼框架不僅使用的代碼少,而且可以生成帶圖片的二維碼,而且二維碼掃描界面也是先做好的,也比較好看。我們所需要做的就是在掃描二維碼后得到的數(shù)據(jù)對(duì)其進(jìn)行操作。
使用方法
添加依賴
compile 'com.singleshu:ZxingPlus:1.1.4'
代碼
public class MainActivity extends AppCompatActivity {
TextView test;
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
test = (TextView) findViewById(R.id.test);
imageView = (ImageView) findViewById(R.id.image1);
//6.0加上動(dòng)態(tài)權(quán)限申請(qǐng),需要在外面Acitvity做申請(qǐng)
PermissionUtils.getInstance().requestPermission(this);
}
public void click(View view){
switch (view.getId()){
//生成二維碼
case R.id.score:
imageView.setImageBitmap(QRCodeUtil.CreateTwoDCode(test.getText().toString()));
break;
//掃描二維碼
case R.id.scan:
startActivity(new Intent(this,QRCodeScanAtivity.class));
break;
//生成二維碼帶圖標(biāo),這和圖片大小相關(guān),默認(rèn)取3/4顯示
case R.id.scorewithlogo:
imageView.setImageBitmap(QRCodeUtil.createWithLogo(test.getText().toString(), BitmapFactory.decodeResource(getResources(), R.drawable.timg)));
break;
//生成帶圖標(biāo)二維碼,自設(shè)置大小 取 multipart/divisor顯示
case R.id.custom_scorewithlogo:
imageView.setImageBitmap(QRCodeUtil.createWithLogo(test.getText().toString(), BitmapFactory.decodeResource(getResources(), R.drawable.timg),1,4));
break;
}
}
}
public class QRCodeScanAtivity extends DefaultQRScanActivity {
//對(duì)控件的自定義,可以修改隱藏默認(rèn)控件
@Override
protected void initCustomViewAndEvents() {
}
//掃描圖片結(jié)果解析回調(diào) recode二維碼字符串
@Override
protected void onAlbumResult(int requestCode, int resultCode, String recode) {
Bundle bundle = new Bundle();
bundle.putString("result",recode);
startActivity(new Intent(QRCodeScanAtivity.this,ResultActivity.class).putExtras(bundle));
finish();
}
//二維碼圖片解析回調(diào) rawResult 二維碼字符串
@Override
protected void handleDecodeResult(String rawResult, Bundle bundle) {
bundle.putString("result",rawResult);
startActivity(new Intent(QRCodeScanAtivity.this,ResultActivity.class).putExtras(bundle));
finish();
}
}
public class ResultActivity extends AppCompatActivity {
TextView test2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);
test2 = (TextView) findViewById(R.id.test2);
if (getIntent() != null){
Bundle bundle = getIntent().getExtras();
String result = bundle.getString("result");
test2.setText(result);
}
}
}
代碼真的不多,基本我們就只用去掉用和接受數(shù)據(jù)。
以上這篇Android ZxingPlus精簡(jiǎn)的二維碼框架示例代碼就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Android編程開發(fā)實(shí)現(xiàn)多線程斷點(diǎn)續(xù)傳下載器實(shí)例
這篇文章主要介紹了Android編程開發(fā)實(shí)現(xiàn)多線程斷點(diǎn)續(xù)傳下載器,涉及Android多線程,文件傳輸及斷點(diǎn)續(xù)傳的相關(guān)技巧,需要的朋友可以參考下2016-01-01
代碼從windows下visual studio到andriod平臺(tái)遷移實(shí)現(xiàn)步驟
這篇文章主要介紹了代碼從windows下visual studio到andriod平臺(tái)遷移的修改記錄的相關(guān)資料,需要的朋友可以參考下2017-01-01
Android編程簡(jiǎn)單實(shí)現(xiàn)ImageView點(diǎn)擊時(shí)背景圖修改的方法
這篇文章主要介紹了Android編程簡(jiǎn)單實(shí)現(xiàn)ImageView點(diǎn)擊時(shí)背景圖修改的方法,涉及Android針對(duì)背景圖相關(guān)屬性設(shè)置的操作技巧,需要的朋友可以參考下2015-12-12
基于Android RecyclerView實(shí)現(xiàn)宮格拖拽效果
在Android發(fā)展的進(jìn)程中,網(wǎng)格布局一直比較有熱度,其中一個(gè)原因是對(duì)用戶來說便捷操作,對(duì)app廠商而言也會(huì)帶來很多的曝光量,本篇我們會(huì)使用RecyclerView來實(shí)現(xiàn)網(wǎng)格拖拽,本篇將結(jié)合圖片分片案例,實(shí)現(xiàn)拖拽效果,需要的朋友可以參考下2024-03-03
Flutter實(shí)現(xiàn)自定義篩選框的示例代碼
本文主要介紹了Flutter實(shí)現(xiàn)自定義篩選框的示例代碼,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07
Android實(shí)現(xiàn)IOS相機(jī)滑動(dòng)控件
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)IOS相機(jī)滑動(dòng)控件的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08
一文帶你了解Android中的網(wǎng)絡(luò)請(qǐng)求
安卓開發(fā)網(wǎng)絡(luò)請(qǐng)求可謂是安卓開發(fā)的靈魂,如果你不會(huì)網(wǎng)絡(luò)請(qǐng)求,那么你開發(fā)的應(yīng)用軟件就是一具沒有靈魂的枯骨。本文主要為大家介紹的是Android的網(wǎng)絡(luò)請(qǐng)求,感興趣的可以跟隨小編一起學(xué)習(xí)一下2022-11-11

