#flutter #http #listview #navigation
Вопрос:
Я начал трепетать прямо сейчас. Я изучаю http, в моем приложении отображаются текстовые списки «заголовок» Json.
Мой следующий шаг-перейти к новому экрану, на котором отображаются текстовые списки json «тело», когда я нажимаю текстовые списки json «заголовок».
Но я не смог найти никаких зацепок. Я не знаю, что делать, с чего начать….. не могли бы вы мне помочь? какой — нибудь совет или совет?
import 'dart:async';
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
void main() {
runApp(new MaterialApp(home: new HomePage()));
}
class HomePage extends StatefulWidget {
@override
HomePageState createState() => new HomePageState();
}
class HomePageState extends State<HomePage> {
List data;
Future<String> getData() async {
var response = await http.get(
Uri.parse(("https://jsonplaceholder.typicode.com/posts")),
headers: {"Accept": "application/json"});
this.setState(() {
data = jsonDecode(response.body);
});
print(data[1]["title"]);
return "Success!";
}
@override
void initState() {
this.getData();
}
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: new AppBar(
title: new Text("Listviews"), backgroundColor: Colors.blue),
body: new ListView.builder(
itemCount: data == null ? 0 : data.length,
itemBuilder: (BuildContext context, int index) {
return new ListTile(title: new Text(data[index]["title"]));
},
),
);
}
}
Комментарии:
1. всем привет. Это определенно вам очень поможет. я тоже только начал изучать флаттер. 😀 flutter.dev/документы/кулинарная книга/навигация/навигация-основы
Ответ №1:
Вы можете использовать onTap
свойства в ListTile
.
return new ListTile(
onTap:(){
// Navigator code
}
title: new Text(data[index]["title"]));