安卓开发-zxing二维码框架

本文介绍了如何在Android项目中集成ZXing库,实现二维码的生成和扫描功能。步骤包括:下载核心库,添加到项目,更新AndroidManifest.xml,配置build.gradle,设计用户界面,以及在Java代码中调用相关功能。提供了一个包含二维码、图片加载、页面滑动和列表刷新等多功能的Demo项目链接。
摘要由CSDN通过智能技术生成

1.新建一个项目

2.下载zxing的core-3.3.3.jar包,放到xxx/libs下,右键选add as library

在这里插入图片描述

3.在AndroidManifest.xml的application标签下加

			<activity
 			android:name="com.journeyapps.barcodescanner.CaptureActivity"
            android:screenOrientation="fullSensor"
            tools:replace="screenOrientation" />

4.在AndroidManifest.xml的manifest标签下加

		<uses-permission android:name="android.permission.CAMERA"/>

在这里插入图片描述

5.build.grade里添加依赖:

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation files('libs/core-3.3.3.jar')
    implementation('com.journeyapps:zxing-android-embedded:3.6.0') { transitive = false }
}

在这里插入图片描述

6.展示页面activity_main.xml中增加按钮及图片

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:layout_editor_absoluteY="81dp">

    <RelativeLayout
        android:id="@+id/activity_main"
        android:layout_width="0dp"
        android:layout_height="0dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <Button
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="110dp"
            android:onClick="onShowList"
            android:text="刷新/加载"
            android:visibility="invisible" />

        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/button"
            android:layout_alignEnd="@+id/button"
            android:layout_alignRight="@+id/button"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="56dp"
            android:layout_marginEnd="0dp"
            android:layout_marginRight="0dp"

            android:text="生成二维码" />

        <Button
            android:id="@+id/button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="59dp"
            android:onClick="onScanQrcode"
            android:text="扫描二维码" />


        <EditText
            android:id="@+id/editText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_marginBottom="233dp"
            android:ems="10"
            android:hint="请输入内容"
            android:layout_centerHorizontal="true"
            android:inputType="textPersonName" />

        <ImageView
            android:id="@+id/imageView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:layout_marginBottom="79dp"
            tools:srcCompat="@tools:sample/avatars" />

    </RelativeLayout>


</android.support.constraint.ConstraintLayout>

7.在xxx.java中调用扫描、生成二维码功能

package com.example.myapplication;

import android.content.Context;
import android.content.res.Resources;
import android.graphics.BitmapFactory;

import android.hardware.Camera;
import android.os.Environment;
import android.support.annotation.DrawableRes;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;


import android.content.Intent;

import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
impor
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值