Skip to content
25 changes: 15 additions & 10 deletions lib/ProgressDotsBar.dart
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,18 @@ class _ProgressDotState extends State<ProgressDot>
void updateDotsState(currentId) {
if (currentId > widget.questionId) {
setState(() {
_size = 20;
_size = 32;
// _color = Colors.lightGreen;
});
} else if (currentId == widget.questionId) {
setState(() {
_size = 40;
_size = 56;
_animationChange();
// _color = Colors.lightGreen;
});
} else if (currentId < widget.questionId) {
setState(() {
_size = 20;
_size = 32;
// _color = Colors.grey;
});
}
Expand Down Expand Up @@ -119,12 +119,15 @@ class ProgressDotsBar extends StatefulWidget {

class _ProgressDotsBarState extends State<ProgressDotsBar> {
Widget line() {
return Container(
height: 3,
width: 10,
decoration: const BoxDecoration(
shape: BoxShape.rectangle,
color: Colors.grey,
return Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
height: 3,
width: 10,
decoration: const BoxDecoration(
shape: BoxShape.rectangle,
color: Color(0xff220f60),
),
),
);
}
Expand All @@ -139,8 +142,10 @@ class _ProgressDotsBarState extends State<ProgressDotsBar> {

@override
Widget build(BuildContext context) {
return Container(
return Padding(
padding: EdgeInsets.all(24),
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
ProgressDot(questionId: 0),
line(),
Expand Down
49 changes: 17 additions & 32 deletions lib/model/api.dart
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@ void getGameId() async {
// print(gameId);
QuestionData.gameId = gameId;
}
Future<bool> questionPost(int num) async{

Future<bool> questionPost(int num) async {
http.Response response;
var url = Uri.parse('https://quiet-eyrie-21766.herokuapp.com/question');
Map<String, String> headers = {'content-type': 'application/json'};
Expand All @@ -58,11 +59,11 @@ Future getQuestion() async {
await Future.delayed(Duration(microseconds: 20));
print("wait");
}
List<Future<bool>> future=[];
List<Future<bool>> future = [];
for (int i = 1; i <= 6; i++) {
future.add(questionPost(i));
}
var futureAll =Future.wait(future);
var futureAll = Future.wait(future);
futureAll.then((results) => controller.sink.add(true));
}

Expand Down Expand Up @@ -123,39 +124,23 @@ Future getResult() async {
var rankingData = data["ranking"];
// 要素分割してリストにする

int circlerank = rankingData[0]["circlerank"];
String circle_name = jsonDecode(rankingData[0]["circle_name"]);
double percent = rankingData[0]["percent"];
int circle_ranking = i + 1;
String circle_name = jsonDecode(rankingData[i]["circle_name"]);
double percent = rankingData[i]["percent"];
print(percent);
String circle_image_url = jsonDecode(rankingData[0]["circle_image_url"]);
String circle_image_url = jsonDecode(rankingData[i]["circle_image_url"]);
String circle_description =
jsonDecode(rankingData[0]["circle_description"]);

// var jsonsentence = json.encode(rankingData);
// var utf8sentence = utf8.decode(jsonsentence.runes.toList());
// print(utf8sentence);
// print(rankingData);

// String image = rankingData[0]["circle_image_url"];
// print(image);

// int circlerank = utf8sentence[0]["circlerank"];
// String circlename = rankingData[0]["circlename"];
// double percent = rankingData[0]["percent"];
// String circle_image_url = rankingData[0]["circle_image_url"];
// String circle_description = rankingData[0]["circle_description"];

// int circlerank = 1;
// String circlename = "cistLT";
// double percent = 0.3333333333333333;
// String circle_image_url =
// "http://www.itagaki.net/pc/imagefile/memo_0043/photo008.jpg";
// String circle_description =
// "IT技術系の勉強をしています!初心者大歓迎です!所属メンバーはバイオ系、電子工学系、情報工学系と様々なメンバーで構成されています!!みんなで興味のあることを勉強し、アウトプットすることを目標にしています!一人で悩まないで!一緒に技術力を高めませんか??";
jsonDecode(rankingData[i]["circle_description"]);

ResultData().set(
i,
Result(circlerank, circle_name, percent, circle_image_url,
circle_description));
Result(
circle_ranking,
circle_name,
percent,
circle_image_url,
circle_description,
));
Resultcontroller.sink.add(true);
}

Expand Down
33 changes: 21 additions & 12 deletions lib/resultdata.dart
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
//Questionの情報を持つクラス
class Result {
int circlerank;
String circlename;
int circle_ranking;
String circle_name;
double percent;
String circle_image_url;
String circle_description;
Result(this.circlerank, this.circlename, this.percent, this.circle_image_url,
this.circle_description) {}
Result(this.circle_ranking, this.circle_name, this.percent,
this.circle_image_url, this.circle_description) {}
}

//Singletonでデータをキャッシュする
Expand All @@ -30,28 +30,37 @@ class ResultData {
set(int key, Result value) => _item[key] = value;
get(int key) => _item[key];
//サークルを返す
GetCircle(int num){
if(ResultData().get(num)==null){
GetCircle(int num) {
if (ResultData().get(num) == null) {
return ResultData().get(-1);
}
return ResultData().get(num);
}

//サークル名を返す
GetName(int num){
return ResultData().get(num).circlename;
GetName(int num) {
return ResultData().get(num).circle_name;
}

//画像を返す
GetImage(int num){
GetImage(int num) {
return ResultData().get(num).circle_image_url;
}
//説明文を返す
GetDC(int num){

//マッチング度を返す
GetDC(int num) {
return ResultData().get(num).percent;
}

//説明文を返す
Getper(int num){
Getper(int num) {
return ResultData().get(num).circle_description;
}

//順位を返す
GetRank(int num) {
return ResultData().get(num).circle_ranking;
}
/*
//質問数を返す
getlength()=>_item.length;
Expand Down
Loading