Android Acitivity生命周期处理错误

时间:2018-07-20 06:59:11

标签: android sqlite qr-code android-lifecycle

早上好,所以我有这个程序,用户可以在其中扫描QR码并在SQLite数据库中获取它的值,但是在获取该值之前,该对话框弹出,通知我“没有找到参与者”。下面是我的代码:

这是我的onStart替代。

     @Override
protected void onStart()
{
    super.onStart();
    getparticipantid = tvParticipantID.getText().toString();
    etparticipantidvalue.setText(getparticipantid);
    getParticipantIbeam();
}

这是我的活动,一旦用户扫描QR码,它将从数据库加载数据。

    private void getParticipantIbeam()
{
    SQLiteFunctionUlitity.GameIBeamParticipant memberInfo = SQLiteFunctionUlitity.getparticipantIbeam(getparticipantid, mDbHelper.getSqliteObjectWithReadable());
    if (memberInfo != null)
    {
        tvParticipantName.setText(memberInfo.getParticipantName());
        tvParticipantNation.setText(memberInfo.getParticipant_nationality());
        tvParticipantCategory.setText(memberInfo.getCategory());

        tvWave.setText(memberInfo.getWave_number());
        tvCategory.setText(memberInfo.getCategory());
    }
    else
    {
        Context context = this;
        AlertDialog.Builder builder1 = new AlertDialog.Builder(context);
        builder1.setMessage("No Participant found in the Game.");
        builder1.setCancelable(true);

        builder1.setPositiveButton("Scan Again", new DialogInterface.OnClickListener()
        {
            public void onClick(DialogInterface dialog, int id)
            {
                Intent intent = new Intent(GameiBeamLineTracing.this, ScanGameIbeam.class);
                startActivity(intent);
                finish();
            }
        });
        builder1.setNegativeButton("Close", new DialogInterface.OnClickListener()
        {
            @Override
            public void onClick(DialogInterface dialog, int which)
            {
                onStop();
            }
        });
        AlertDialog alert11 = builder1.create();
        alert11.show();
    }
}

您可以看到,我在onStart方法中调用了getParticipantIbeam活动,但是当我调用它时,它读取的是else语句而不是if语句。

我知道这是一个简单的if语句和生命周期,但是我非常想知道答案。

1 个答案:

答案 0 :(得分:0)

我已经使用该库扫描QR码,它非常简单,可以为您提供帮助。

QR Code implementation library for android, Click here (blikoon)

该库肯定会解决您所有与QR Code相关的问题,并且不要忘记实现照片,图库等运行时权限。