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閱讀 383評論 0 2
  • 復雜的設計沒人看的懂,也不好理解操作。 將復雜的操作變得簡單, 需要深入到復雜的問題中,再淺出。 攝影:Jason...
    齊天大圣_YangDQ閱讀 174評論 0 0
  • 張楠是我所有朋友中最癡情的一個,高一喜歡的女孩,一直跌打滾爬的追到高三,可是,那又怎樣?喜歡就是喜歡,就算孤城荒島...
    貍酥閱讀 267評論 0 0
  • 這是一個簡單的童話,閑來無事自我消遣而作,但你若要讀,請認真去讀,畢竟我從寫下這段文字時,心情是略有沉痛的。 ...
    如果不是遇見你閱讀 1,335評論 7 15