Yorumlar
Eğer daha önce hiç Android uygulama geliştirmediysen öncelikle eğitimlerin üzerinden sabırla geçerek hepsini tamamlamanı tavsiye ederim. Eğitimlerde bir yerde web üzerinden nasıl veri çekileceğini mutlaka öğrenirsin ve çok daha fazlasını. …
Mehmet Altıparmak
Mehmet Altıparmak
10 yıl önce
Okudum dostum, ama aradığım o değildi. Sorunu hallettim for içinde yeni butonu dinamik olarak yaratmaktı :) xml'den gelen her veri için. Bu dökümandaki gibi yapacak olursam bütün butonları baştan yazmam gerekecekti.
Mehmet Altıparmak
10 yıl önce
Sağolasın yine de ;)
Mehmet Altıparmak
10 yıl önce
teşekkürler
Mehmet Altıparmak
10 yıl önce
Uzun denemeler sonucunda birkaç yol denedim fakat hepsinde olduğu gibi bir stringi beklemesi için en son myData.Result; kullandığım anda bu satıra geliyor ve main thread blocklanıyor.Okuduğum kadarıyla main thread in içinde await kelimesi .Net 4.5 ile engellenmiş ve bunun yerine .Result kullanılmaya başlanmış (link) fakat dediğim gibi .Result ta direk takılıyor ve interfaceim de donuyor
[code]
public class JsonDataManager
{
Task myData;
public JsonDataManager(string Category)
{
String url = "http://www.kaanbarisbayrak.com/?json=get_category_posts&cat="+Category;
HttpClient hc = new HttpClient();
myData = hc.GetStringAsync(url);
}
public String getWriting()
{
// wait for the download task to finish
string data = myData.Result;
// use the resulting string
JObject obj = JObject.Parse(data);
JArray array = (JArray)obj["posts"];
string writing = (string)array[0]["content"];
return writing;
}
}
[/code]
Mehmet Altıparmak
10 yıl önce
GetWriting fonksiyonunu çağırırken de await kullanmalısın.
string writing = await manager.getWriting();
Mehmet Altıparmak