参考网上的二维码

package request.http.com.httprequest.fragment.my;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.os.Bundle;import android.os.Message;import android.support.annotation.NonNull;import android.support.annotation.Nullable;import android.support.v4.app.Fragment;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;import android.widget.LinearLayout;import com.google.zxing.BarcodeFormat;import com.google.zxing.EncodeHintType;import com.google.zxing.WriterException;import com.google.zxing.common.BitMatrix;import com.google.zxing.qrcode.QRCodeWriter;import java.util.HashMap;import java.util.Hashtable;import java.util.Map;import butterknife.BindView;import butterknife.ButterKnife;import butterknife.Unbinder;import request.http.com.httprequest.R;import request.http.com.httprequest.activity.MainActivity;/** * Date: 2019/7/24 * Time: 15:15 * author:Guest */public class pay_receiveFragment extends Fragment implements View.OnClickListener {    @BindView(R.id.iv_receive_back)    ImageView iv_receive_back;    @BindView(R.id.iv_receive_qrcode)    ImageView iv_receive_qrcode;    @Nullable    @Override    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {        View  view = inflater.inflate(R.layout.fragment_pay_receive , container , false);        Unbinder unbinder = ButterKnife.bind(this, view);        Message message = new Message();        message.arg1 = 202;        MainActivity.mainHandler.sendMessage(message);        initView();        initData();        return view;    }    private void  initView(){        iv_receive_back.setOnClickListener(this);    }    private void  initData(){        QRCode("https://www.baidu.com/",500,500);    }    @Override    public void onClick(View v) {     switch (v.getId()){         case R.id.iv_receive_back:             getActivity()                     .getSupportFragmentManager()                     .beginTransaction()                     .addToBackStack(null)                     .replace(R.id.fy_fragment,new payFragment())                     .commit();             break;     }    }  /**     *      * @param content: 地址,生成二维码地址     * @param width:二维码的宽度     * @param height:二维码的高度     */    private void QRCode(String content, int width, int height) {        try {            QRCodeWriter qrWriter = new QRCodeWriter() ;            Map map = new HashMap();            map.put(EncodeHintType.CHARACTER_SET, "UTF-8");            BitMatrix  bitMatrix = qrWriter.encode(content, BarcodeFormat.QR_CODE, width, height,map);            int[] pixels = new int[width*height];            for (int i = 0; i < height; i++) {                for (int j = 0; j < width; j++) {                    if (bitMatrix.get(j, i)) {                        pixels[i*width+j] = 0xff000000;                    }else {                        pixels[i*width+j] = 0xffffffff;                    }                }            }            Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);            bitmap.setPixels(pixels, 0, width, 0, 0, width, height);            iv_receive_qrcode.setImageBitmap(bitmap);        } catch (WriterException e) {            e.printStackTrace();        }    }}

更多相关文章

  1. Android获取定位经纬度,转换成地址
  2. Android 开发艺术探索 源码地址
  3. Android下如何获取Mac地址?
  4. Android SDK开发包国内下载地址
  5. 根据文件名称修改安卓默认的蓝牙接收文件地址
  6. Android WebView如何隐藏地址栏,用WebView 来显示网页内容
  7. 我会经常在这个地址下面共享自己保存的几本书
  8. Android 超简易Zxing框架 生成二维码+扫码功能

随机推荐

  1. Android 2.2 source code construction
  2. android连接webservice
  3. android 权限管理PermissionDispatcher使
  4. Android开发学习之事件处理和Button详解
  5. android快速点击生成两个相同页面的解决
  6. Android SDK Permission大全访问权限
  7. Android原生视频播放VideoView的使用
  8. Keep ProgressDialog while rotate the p
  9. 2012-7-17 android:layout_weight
  10. Android 弹框UI框架