Android Studio二维码生成实现

思路导入依赖库zxing3.3.3 这是目前最新的版本。导入方式file>>project structure>>app>>dependencis>>点击加号>>选择library>>输入zxing 3.3.3就好了。也可以去网上直接下依赖包,然后再本地导入libs,在bulid.gradle(module.app)中写file("libs/core3.3.3")

直接上代码
MainActivity代码

public class MainActivity extends AppCompatActivity {
EditText editText;
Button button;
ImageView imageView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    init_Viw();
}

public void zxing(String string){
    try {
        ;
        BitMatrix bitMatrix = new QRCodeWriter().encode(string, BarcodeFormat.CODE_93, 250, 250);
        int fixbit[]=new int[bitMatrix.getWidth()*bitMatrix.getHeight()];
        for (int y=0;y<bitMatrix.getHeight();y++){
            for (int x=0;x<bitMatrix.getWidth();x++){
                if (bitMatrix.get(x,y)){
                    fixbit[x+y*bitMatrix.getWidth()]= Color.BLACK;
                }else{
                    fixbit[x+y*bitMatrix.getWidth()]=Color.WHITE;
                }
            }
        }
        Bitmap bitmap=Bitmap.createBitmap(fixbit,bitMatrix.getWidth(),bitMatrix.getHeight(), Bitmap.Config.ARGB_8888);
        imageView.setImageBitmap(bitmap);

    }catch (WriterException e){

    }

}
public void init_Viw(){
    button=(Button)findViewById(R.id.start);
    editText=(EditText)findViewById(R.id.edit);
    imageView=(ImageView)findViewById(R.id.image);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String getText=editText.getText().toString();
            zxing(getText);
        }
    });
}

}
布局代码

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout             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:orientation="vertical"
android:layout_height="match_parent"
tools:context=".MainActivity">
 <EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/edit"/>
   <Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/start"
    android:text="start"/>
<ImageView
    android:layout_width="match_parent"
    android:layout_height="260dp"
    android:id="@+id/image"/>
  </LinearLayout>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 成功的时候, 想起了您, 我敬爱的父亲, 这成功里凝结着多少期望与等待啊! 失败的时候, 想起了您, 我敬爱的父亲...
    碧水蓝天_2a7d阅读 385评论 0 2
  • 复杂的设计没人看的懂,也不好理解操作。 将复杂的操作变得简单, 需要深入到复杂的问题中,再浅出。 摄影:Jason...
    齐天大圣_YangDQ阅读 174评论 0 0
  • 张楠是我所有朋友中最痴情的一个,高一喜欢的女孩,一直跌打滚爬的追到高三,可是,那又怎样?喜欢就是喜欢,就算孤城荒岛...
    狸酥阅读 290评论 0 0
  • 这是一个简单的童话,闲来无事自我消遣而作,但你若要读,请认真去读,毕竟我从写下这段文字时,心情是略有沉痛的。 ...
    如果不是遇见你阅读 1,341评论 7 15