android – 如何使用ZXING扫描结果

android – 如何使用ZXING扫描结果,第1张

概述我对这个问题感到失望.我是 android开发的新手. 我想使用ZXING的扫描结果.我将ZXING集成到我的Android应用程序中,扫描工作正常.现在我想使用扫描结果更新主活动中的TextView. 我怎样才能做到这一点? 我的代码现在正在执行以下 *** 作: >使用按钮打开主要活动. >单击按钮时,它会激活扫描仪. >扫描后,它将返回主要活动. > TextView是空的,由于某种原因,它从横向移 我对这个问题感到失望.我是 android开发的新手.

我想使用ZXING的扫描结果.我将ZXING集成到我的Android应用程序中,扫描工作正常.现在我想使用扫描结果更新主活动中的TextVIEw.

我怎样才能做到这一点?

我的代码现在正在执行以下 *** 作:

>使用按钮打开主要活动.
>单击按钮时,它会激活扫描仪.
>扫描后,它将返回主要活动.
> TextVIEw是空的,由于某种原因,它从横向移动到纵向后返回到原始内容.

在(2)之后我想使用扫描结果更新主要活动中的TextVIEw(我的代码中的tv).

请帮帮我们
谢谢.

我的代码:

public class Main extends Activity {/** Called when the activity is first created. */@OverrIDepublic voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.main);    button presstoScan = (button) findVIEwByID(R.ID.button1);    presstoScan.setonClickListener(new OnClickListener() {        @OverrIDe        public voID onClick(VIEw v) {            // Todo auto-generated method stub            Intent data = new Intent("com.Google.zxing.clIEnt.androID.SCAN");            data.putExtra("SCAN_MODE","QR_CODE_MODE");            startActivityForResult(data,0);TextVIEw tv = (TextVIEw) findVIEwByID(R.ID.scanResult);                tv.setText(data.getStringExtra("SCAN_RESulT"));        }    });}public voID onActivityResult(int requestCode,int resultCode,Intent data) {    String contents = null;    super.onActivityResult(requestCode,resultCode,data);    if (requestCode == 0) {          if (resultCode == RESulT_OK) {             contents = data.getStringExtra("SCAN_RESulT");             String format = data.getStringExtra("SCAN_RESulT_FORMAT");             // Handle successful scan          } else if (resultCode == RESulT_CANCELED) {             // Handle cancel          }    }}

}

解决方法 移动以下块

TextVIEw tv = (TextVIEw) findVIEwByID(R.ID.scanResult);tv.setText(data.getStringExtra("SCAN_RESulT"));

public voID onActivityResult(int requestCode,Intent data) {String contents = null;super.onActivityResult(requestCode,data);if (requestCode == 0) {      if (resultCode == RESulT_OK) {         contents = data.getStringExtra("SCAN_RESulT");         String format = data.getStringExtra("SCAN_RESulT_FORMAT");         //moved here         TextVIEw tv = (TextVIEw) findVIEwByID(R.ID.scanResult);         tv.setText(contents);         // Handle successful scan      } else if (resultCode == RESulT_CANCELED) {         // Handle cancel      }}

}

[编辑]

在您的活动中添加此内容

@OverrIDepublic voID onConfigurationChanged(Configuration newConfig){            super.onConfigurationChanged(newConfig);}

在清单中更改主要活动以添加androID:configChanges =“orIEntation”

<activity androID:name="..."          androID:label="@string/appname"          androID:configChanges="orIEntation"
总结

以上是内存溢出为你收集整理的android – 如何使用ZXING扫描结果全部内容,希望文章能够帮你解决android – 如何使用ZXING扫描结果所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1129706.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存