【发布时间】:2020-04-09 03:54:06
【问题描述】:
在我之前的帖子中,我询问了如何使用 C# 中的正文从 Http Get Request 获取数据。现在我面临另一个错误,Android.Util.AndroidRuntimeException: 'Only the original thread that created a view hierarchy can touch its views.' 有人知道如何解决这个问题吗?
代码
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Get,
RequestUri = new Uri("my url"),
Content = new StringContent("my json body content", Encoding.UTF8, "application/json"),
};
var response = await client.SendAsync(request).ConfigureAwait(false);
response.EnsureSuccessStatusCode();
var responsebody = await response.Content.ReadAsStringAsync().ConfigureAwait(false);
string text = responsebody.ToString();
string[] str = text.Split(new[] { ',', ':' }, StringSplitOptions.RemoveEmptyEntries);
string result = str[10];
labelTxt.Text = result;
【问题讨论】:
-
试着解释你在哪一行得到了错误。你到底想做什么。也看这里,stackoverflow.com/questions/5161951/… 似乎可能重复
-
我在
labelTxt.Text = result收到错误消息。我正在尝试从响应体中传递其中一个值并让它显示在labelTxt.Text。 -
你只能从 UI 线程修改 UI 元素是相当普遍的做法,所以看起来你可能需要调用一个线程
标签: c# api xamarin.forms httpclient