Android Studio:如何将变量从一个java文件保存到另一个文件

我正在开发一个将扫描数据(条形码)转换为GoogleSheet数据的应用程序,并且我正在尝试将条形码编号(来自Page2.java)传输到另一个java文件(ListItem.java)中

我发现通常的方法是创建意图。所以我就这么做了。但是我放入 ListItem.java 的 toast 给了我“null”而不是扫描的数字(例如 0123456789012)

请问您能告诉我我错在哪里吗?太感谢了 !

第一个代码(Page2.java,我在其中得到“scanContent2”,我需要的变量):

public class Page2 extends Activity implements OnClickListener {


    @SuppressLint("ClickableViewAccessibility")

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.page2);

        scanBtn2 = (Button) findViewById(R.id.scan_button2);


        scanBtn2.setOnClickListener(this);

    }


    public Button scanBtn2;

    public String scanContent2;


    @Override

    public void onClick(View v) {

        if (v.getId() == R.id.scan_button2) {

            IntentIntegrator scanIntegrator = new IntentIntegrator(this);

            scanIntegrator.initiateScan();

        }

    }


    @Override

    public void onActivityResult(int requestCode, int resultCode, Intent intent) {


        IntentResult scanningResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);

        if (scanningResult != null) {

            scanContent2 = scanningResult.getContents();


            Intent intenta = new Intent(getApplicationContext(),ListItem.class);

            intenta.putExtra("theScanContent2", scanContent2);

            startActivity(intenta);


        } else {

            Toast toast = Toast.makeText(getApplicationContext(),

                    "No scan data received!", Toast.LENGTH_SHORT);

            toast.show();

        }

    }

}



qq_遁去的一_1
浏览 39回答 1
1回答

皈依舞

在Listitem.java中的以下行中,String scanContent2 = getIntent().getStringExtra("theScanContent");您正在尝试使用键theScanContent获取 String ,同时将 scanContent2 与键theScanContent2放在 Page2.java 中intent.putExtra("theScanContent2", scanContent2);将数据放入 Intent 并从 Intent 访问数据时,请确保 Intent 的键相同,以避免得到 null 结果。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java