簡體   English   中英

在Android的ZXing中訪問QR碼坐標

[英]Access to QR code coordinate in ZXing on Android

我正在Eclipse中開發ZXing項目:

public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Button b=(Button)findViewById(R.id.button1);
    b.setOnClickListener(new OnClickListener(){
        @Override
        public void onClick(View view)
        {
        Log.d("test", "button works!");
        Intent intent = new Intent("com.google.zxing.client.android.SCAN");
        intent.putExtra("com.google.zxing.client.android.SCAN.SCAN_MODE", "QR_CODE_MODE");
        startActivityForResult(intent, 0);


         b1 = (Button)findViewById(R.id.button111);

        }
        public void onActivityResult(int requestCode, int resultCode, Intent intent) 
        {
            if (requestCode == 0) 
            {
                if (resultCode == RESULT_OK)
                {
                    String contents = intent.getStringExtra("SCAN_RESULT");
                    String format = intent.getStringExtra("SCAN_RESULT_FORMAT");


                    Log.i("xZing", "contents: "+contents+" format: "+format);
                    // Handle successful scan
                } 
                else if (resultCode == RESULT_CANCELED)
                {
                    // Handle cancel
                    Log.i("xZing", "Cancelled");
                }
            }

我發現查找程序模式坐標位於Detector類( getTopLeftgetTopRightgetBottomLeft )中,但是當我要訪問它們時,我遇到了代碼錯誤。 我不知道如何訪問這些變量。 例如,我在Detector類中定義了一個public static FinderPattern topLeft1 ,並且在processFinderPatternInfo方法中添加了topLeft1=topLeft startActivity結果之后,我添加:

float m1=Detector.topLeft1.x;
 m2=Detector.topLeft1.y;
 b.setText("(x,y)="+m1+","+m2); 

但是當我運行程序並單擊按鈕進行掃描時:我得到:

不幸的是zxing已經停止了

我需要10點信譽才能發布圖像,但我不能發布logcat圖像:-(誰能盡快幫助我嗎?非常感謝

我解決了我的問題,我必須使用OnCreate方法編寫OnActivityResult類! 就這樣! 謝謝你們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM