Я использую nisrulz QReader.Как и в примерах
qrEader = new QREader.Builder(this, mySurfaceView, new QRDataListener() {
@Override
public void onDetected(final String data) {
// Log.d("QREader", "Value : " + data);
text.post(new Runnable() {
@Override
public void run() {
doSomething(data);
}
});
}
}).facing(QREader.BACK_CAM)
.enableAutofocus(true)
.height(mySurfaceView.getHeight())
.width(mySurfaceView.getWidth())
.build();
, у них есть текст, который является TextView, что делает возможной публикацию (Runnable).У меня нет представлений, и я не хочу добавлять ..
Как я могу запустить doSomething(data)
только один раз в другом потоке?
РЕДАКТИРОВАТЬ: я пытался преобразовать пример кода Javaв Котлин:
qreader = QREader.Builder(view.context, surface_view, QRDataListener { data ->
myTextView.post {
doSomething(data)
}
})
.facing(QREader.BACK_CAM)
.enableAutofocus(true)
.height(surface_view.height)
.width(surface_view.width)
.build()