Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
brainmentorspvtltd authored Dec 3, 2020
1 parent 7e13cac commit 746b324
Show file tree
Hide file tree
Showing 4 changed files with 143 additions and 0 deletions.
9 changes: 9 additions & 0 deletions code6/lib/main.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import 'package:apicalling/screens/imagelist.dart';
import 'package:flutter/material.dart';

void main(){
runApp(MaterialApp(
title: 'Calling API',
home: SearchList(),
));
}
45 changes: 45 additions & 0 deletions code6/lib/screens/imagelist.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
import 'dart:convert' as convert;

import 'package:apicalling/utils/server.dart';
import 'package:flutter/material.dart';

class SearchList extends StatefulWidget {
@override
_SearchListState createState() => _SearchListState();
}

class _SearchListState extends State<SearchList> {
@override
void initState() {
// TODO: implement initState
super.initState();
print("Init Call");
Server.getImages(giveMeData);
print("Init Call Ends");
}

String img;
giveMeData(String json) {
//print("I Rec the JSON in ImageList Screen $json");
Map<String, dynamic> map = convert.jsonDecode(json);
setState(() {
img = map['data'][0]['images']['original']['url'];
});
print(
"All the Data is Inside the Map ${map['data'][0]['images']['original']['url']}");
//map['data'][0]
}

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Image Search'),
),
body: Container(
color: Colors.lightGreenAccent,
child: img != null ? Image.network(img) : Text('No Image FOUND'),
),
);
}
}
12 changes: 12 additions & 0 deletions code6/lib/utils/server.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import 'package:http/http.dart' as http;

class Server {
static getImages(Function fn) {
const URL =
"https://api.giphy.com/v1/gifs/search?api_key=vFRSFWo6g7vJ7ZAjt3DMDolU52ORTxwH&q=Iron%20man&limit=5";
Future<http.Response> future = http.get(URL);
future
.then((http.Response response) => fn(response.body))
.catchError((err) => print(err));
}
}
77 changes: 77 additions & 0 deletions code6/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: apicalling
description: A new Flutter application.

# The following line prevents the package from being accidentally published to
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1

environment:
sdk: ">=2.7.0 <3.0.0"

dependencies:
flutter:
sdk: flutter


# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.0
http: ^0.12.2

dev_dependencies:
flutter_test:
sdk: flutter

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

# The following section is specific to Flutter.
flutter:

# The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in
# the material Icons class.
uses-material-design: true

# To add assets to your application, add an assets section, like this:
# assets:
# - images/a_dot_burr.jpeg
# - images/a_dot_ham.jpeg

# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/assets-and-images/#resolution-aware.

# For details regarding adding assets from package dependencies, see
# https://flutter.dev/assets-and-images/#from-packages

# To add custom fonts to your application, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
# fonts:
# - family: Schyler
# fonts:
# - asset: fonts/Schyler-Regular.ttf
# - asset: fonts/Schyler-Italic.ttf
# style: italic
# - family: Trajan Pro
# fonts:
# - asset: fonts/TrajanPro.ttf
# - asset: fonts/TrajanPro_Bold.ttf
# weight: 700
#
# For details regarding fonts from package dependencies,
# see https://flutter.dev/custom-fonts/#from-packages

0 comments on commit 746b324

Please sign in to comment.