حسام
4 سال پیش توسط حسام مطرح شد
1 پاسخ

تبدیل داده future string به String

سلام دوستانه من با استفاده از dio و async و await یک داده ای رو از طریق Api گرفتم
ولی نوع خروجی تابعی که async و await داره به صورت future<string> هست

بنده سرچ کردم به استفاده از

.then((String result){
setState(() {
      urlImageApi = result;
    });
});

رسیدم و استفاده کردم و جواب نگرفتم
ممنون میشم اگر راهی به ذهنتون میرسه یا تجربشو داشتید به اشتراک بذارید
با تشکر


ثبت پرسش جدید
محمد خاشعی
تخصص : برنامه نویس فلاتر (junior)
@mkashei2 3 سال پیش مطرح شد
0

سلام دوست عزیز
من یک مثال از پروژه ی خودم میزنم که متوجه بشید
اول یک کلاس پست برای دریافت جیسون ها ایجاد می کنم

class textss{
  String text1;

  textss(this.text1);

}

بعد یک لیست ایجاد میکنم

List<textss> textitems = [];

بعد میریم سراغ Get کردن متن مورد نظر (من با http کار میکنم برای کار با dio به این سایت برید)

ما یک کلاسی میسازیم که به استلاح ایتم هامونو فچ کنیم

  void fetchText() async {
    var texturl = "your json file address";
    Response response = await get(Uri.parse(texturl));
    setState(() {
      var textjson = json.decode(utf8.decode(response.bodyBytes));
      for (var i in textjson) {
        var textitem = textss(i['text1']);
        textitems.add(textitem);
      }
    });
  }

الان متن ما به صورت فارسی گرفته شد و اماده ی استفاده
برای استفاده هم من چون یک لیست از جیسون ها دارم اینطوری استفاده می کنم

    Expanded(
               child: ListView.builder(
                   itemCount: textitems.length,
                   itemBuilder: (c,index)=> Padding(
                     padding: const EdgeInsets.all(8.0),
                     child: Directionality(
                       textDirection: TextDirection.rtl,
                       child:QuickText(textitems[index].text1,textAlign: TextAlign.right,size: 22,
                       ),
                     ),
                   )),
             )

شما از text یا AutoSizeText میتونی استفاده کنی چون اون کوییک تکست پلاگین خودمه


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام