第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何在其他 Activity 中發(fā)送從 QRcode 掃描儀讀取的字符串

如何在其他 Activity 中發(fā)送從 QRcode 掃描儀讀取的字符串

元芳怎么了 2023-05-17 16:36:39
我在 Android 中使用二維碼掃描器,我想要拆分值,但我無(wú)法將結(jié)果從 ScanActivity 發(fā)送到 Main_Activity,導(dǎo)致程序崩潰,我在下面有錯(cuò)誤(引起:java.lang.NullPointerException:嘗試在 com.exampledemo.parsaniahardik.scanbarcodeqrdemonuts 的空對(duì)象引用上調(diào)用虛擬方法“java.lang.String android.os.BaseBundle.getString(java.lang.String)”。 MainActivity.onCreate(MainActivity.java:26))有人可以幫我嗎?*** MainActivity Code @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        Button btn = (Button) findViewById(R.id.btn);        Bundle my_split = getIntent().getExtras();        String st = my_split.getString("tvresult1");             String totale = st;        String [] parte = totale.split("-");        part1 = parte[0];        part2 = parte[1];        part3 = parte[2];        part4 = parte[3];        part5 = parte[4];        part6 = parte[5];        MainActivity.Name.setText(""+part1);        MainActivity.TNumber.setText(""+part2);        MainActivity.date.setText(""+part3);        MainActivity.numberOf.setText(""+part4);        MainActivity.sum.setText(""+part5);        MainActivity.amount.setText(""+part6); btn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Intent intent = new Intent(MainActivity.this, ScanActivity.class);                startActivity(intent);            }        });
查看完整描述

2 回答

?
牛魔王的故事

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊

您可以通過(guò) 將掃描活動(dòng)的結(jié)果獲取到您的主要活動(dòng)onActivityResult(),您可以像這樣實(shí)現(xiàn)它:


 btn.setOnClickListener(new View.OnClickListener() {

        @Override

        public void onClick(View v) {

            Intent intent = new Intent(MainActivity.this, ScanActivity.class);

            startActivityForResult(intent, 500) //500 is our request code, we will use this to check if incoming data is what we want. You can put any integer value in it

        }

    });

掃描活動(dòng)

    @Override

public void handleResult(me.dm7.barcodescanner.zbar.Result result) {

    // Do something with the result here

    Log.v("kkkk", result.getContents()); // Prints scan results

    Log.v("uuuu", result.getBarcodeFormat().getName()); // Prints the scan format (qrcode, pdf417 etc.)


    Intent mainActivity = new Intent(this,MainActivity.class);

    mainActivity.putExtra("tvresult1",result.getContents().toString());

    setResult(Activity.RESULT_OK, mainActivity);

    finish(); //exiting your ScanActivity

}

現(xiàn)在,我們需要做的就是覆蓋onActivityResult()你的MainActivity


@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {


 if (requestCode == 500) { //Remember the result code we set in startActivityForResult()? This is how we identify our incoming data

     if(resultCode == Activity.RESULT_OK){  //Data is received

        String result= data.getStringExtra("tvresult1"); 

        //Your result is received

     } 

   }

}


查看完整回答
反對(duì) 回復(fù) 2023-05-17
?
largeQ

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊

有很多方法可以做到這一點(diǎn)。

  1. 您可以使用startActivityForResult();

  2. 您可以使用界面連接兩個(gè)活動(dòng)。

  3. 靜態(tài)變量也可以幫助你。
    為此,創(chuàng)建一個(gè)類并在類內(nèi)部定義一個(gè)靜態(tài)變量,如下所示。

public class QRDB {

? ? private static String QRCodeData;

? ? public static String getData() {

? ? ? ? return QRCodeData;

? ? }

? ? public static void setData(String data) {

? ? ? ? this.QRCodeData = data;

? ? }

}?

然后在 handleResult 方法上調(diào)用 setData 方法,如下所示


@Override

public void handleResult(me.dm7.barcodescanner.zbar.Result result) {

? ? QRDB.setData(result.getContents());

? ? finish();

}

在 MainActivity 類的 onResume 方法中,您可以訪問(wèn) QrCode 數(shù)據(jù)。


@Override

protected void onResume () {

? ? super.onResume();

? ? Log.v("Data ", QRDB.getData());

}

希望它能幫助你。


查看完整回答
反對(duì) 回復(fù) 2023-05-17
  • 2 回答
  • 0 關(guān)注
  • 222 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)