Я создаю QR-код в Xamarin и вызываю генерацию QR-кода внутри Device.BeginInvokeOnMainThread
, чтобы я мог динамически обновлять QR-код при каждом добавлении нового ввода.
Device.BeginInvokeOnMainThread(async () =>
{
QRCodeView.IsVisible = true;
QRCodeView = null;
QRCodeView = new ZXingBarcodeImageView
{
BarcodeFormat = BarcodeFormat.QR_CODE,
BarcodeOptions = new QrCodeEncodingOptions
{
Height = 150,
Width = 150,
PureBarcode = true
},
BarcodeValue = await SetQrContent(),
VerticalOptions = LayoutOptions.CenterAndExpand,
HorizontalOptions = LayoutOptions.CenterAndExpand
};
});
В моей функции SetQrContent()
QR-коду передаются новые значения. Однако Я думаю, что эта функция вызывается слишком поздно, так как значения нового QR-кода установлены неправильно, из-за чего мой QR-код не изменяется при изменении ввода.
Я использую BeginInvokeOnMainThread
неправильно?