簡體   English   中英

帶有Zxing的Android QR閱讀器

[英]Android QR reader with Zxing

當我閱讀Qr代碼時, textView不會改變。(問題1)有什么問題?

public class MainActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler{


private Button buton;
private TextView textView;
private ZXingScannerView myview;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    buton = (Button)findViewById(R.id.button);
    textView = (TextView)findViewById(R.id.textView);
    buton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            myview = new ZXingScannerView(MainActivity.this);

            myview.setResultHandler(MainActivity.this);
            setContentView(myview);
            myview.startCamera();


        }
    });

}

@Override
protected void onPause() {
    super.onPause();
    myview.stopCamera();
}

@Override
public void handleResult(Result result) {

    setContentView(R.layout.activity_main);
    textView.setText(result.getText().toString());
    myview.stopCamera();


}
}

當我閱讀完Qr代碼后,我想用result開始新的活動。 (問題2)我該怎么做? 這段代碼行得通嗎?

@Override
public void handleResult(Result result) {
    myview.stopCamera();
    Intent intent = new Intent(getApplicationContext(),SecondActivty.class);
    intent.putExtra("Result",result);
    startActivity(intent);


}

如果沒有,我應該如何解決?

刪除setContentView(R.layout.activity_main); 來自handleResult 您將用新視圖替換引用的視圖。

至於按意圖傳達Result ,按原樣,您將無法使用。 Result不是從Parcelable繼承的,您不能只是將其粘貼在意圖中並期望它能工作。 最好從Result獲取所有相關信息,並將其作為字符串放入Intent中。

暫無
暫無

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

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