gpt4 book ai didi

android - 如何将数据从函数传递到外部对象(android)

转载 作者:行者123 更新时间:2023-11-29 18:10:46 25 4
gpt4 key购买 nike

我正在使用 ZyXEL 条形码扫描器的这种改进,我想通过此函数将字符串“upc”传递给 EditText 对象,我该怎么做?

 protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
switch(requestCode)
{
case IntentIntegrator.REQUEST_CODE:
{
if (resultCode != RESULT_CANCELED)

{
IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
if (scanResult != null)
{
String upc = scanResult.getContents();

}

}
break;
}
}
}

第二个问题:

我想在点击这样的按钮后调用一个函数:

button3.setOnClickListener(new OnClickListener()
{

@Override
public void onClick(View v)
{

IntentIntegrator.initiateScan(this);

}
});

但是我得到这个错误:

"The method initiateScan(Activity) in the type IntentIntegrator is not applicable for the arguments (new View.OnClickListener(){})"

所以我尝试通过点击这个按钮时调用函数来解决这个问题,这个函数调用了原始函数

它看起来像这样:

 button3.setOnClickListener(new OnClickListener()
{

@Override
public void onClick(View v)
{
turntheshiton();

}
});

public void turntheshiton()
{
IntentIntegrator.initiateScan(this);
}

但这不是解决这个问题的真正优雅的方法,还有其他方法吗?

谢谢!!

最佳答案

 String upc = scanResult.getContents();
updateEditField(upc );// or use <activity-name>.this.updateEditField(upc );




private void updateEditField(String str){

EditField ef = (EditField)findViewByID(R.id.<ef_id>);

if(null!=ef){
ef.setText(str):
}
}

第二个问题:

in IntentIntegrator.initiateScan(this);



use <activity-name>.this like Activity.this

关于android - 如何将数据从函数传递到外部对象(android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10885269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com