I would like to run this statement after getting result into OStateUserId object.
details.Text = OStateUserID.name + "\n" + OStateUserID.population);
bStateuserID.Click += async delegate
{
details.Text=" ";
Guid x = new Guid("33F8A8D5-0DF2-47A0-9C79-002351A95F88");
state OStateUserID =(state) await obj.GetStateByUserId(x.ToString());
details.Text = OStateUserID.name + "\n" + OStateUserID.population);
};
GetStateByUserId()
method returns an object of class State
.
It runs asynchronously. After completing operation, I'd like to assign the name and population to the TextView details.
How can i use RunOnUIThread()
in this case?
You don't need to.
In this code you posted:
bStateuserID.Click += async delegate
{
details.Text=" ";
Guid x = new Guid("33F8A8D5-0DF2-47A0-9C79-002351A95F88");
state OStateUserID =(state) await obj.GetStateByUserId(x.ToString());
details.Text = OStateUserID.name + "\n" + OStateUserID.population);
};
The line
details.Text = OStateUserID.name + "\n" + OStateUserID.population);
is already running on the UI thread.
I have an async
intro on my blog that explains this behavior.