Skip to content

Instantly share code, notes, and snippets.

View MarkOSullivan94's full-sized avatar

Mark O'Sullivan MarkOSullivan94

View GitHub Profile
import 'dart:convert';
void main() {
final stringifiedJson = '{"id": "1", "name": "ford", "description": "fast car", "roof_material": "glass", "some_other_prop": "hello"}';
final json = jsonDecode(stringifiedJson);
final cabrio = Car.fromJson(json, 'cabrio') as Cabrio;
print('Roof material: ${cabrio.roofMaterial}'); // null
print('Some other prop: ${cabrio.someOtherProp}');
}
@MarkOSullivan94
MarkOSullivan94 / fluttery_audio.dart
Created May 3, 2019 21:16
Flutter_audio 0.0.4 playing music on app startup
import 'package:fluttery_audio/fluttery_audio.dart';
import 'package:flutter/material.dart';
void main() {
runApp(new MaterialApp(home: new ExampleApp()));
}
class ExampleApp extends StatefulWidget {
@override
_ExampleAppState createState() => new _ExampleAppState();
@MarkOSullivan94
MarkOSullivan94 / flute_music_player.dart
Last active May 4, 2019 15:05
flute_music_player 0.0.6 example
import 'package:flute_music_player/flute_music_player.dart';
import 'package:flutter/material.dart';
void main() {
runApp(new MaterialApp(home: new ExampleApp()));
}
class ExampleApp extends StatefulWidget {
@override
_ExampleAppState createState() => new _ExampleAppState();
@MarkOSullivan94
MarkOSullivan94 / audioplayers.dart
Last active May 4, 2019 14:58
Playing background music in Flutter with audioplayers 0.10.1
import 'package:audioplayers/audio_cache.dart';
import 'package:audioplayers/audioplayers.dart';
import 'package:flutter/material.dart';
void main() {
runApp(new MaterialApp(home: new ExampleApp()));
}
class ExampleApp extends StatefulWidget {
@override
@MarkOSullivan94
MarkOSullivan94 / asset-audio-player.dart
Last active May 17, 2022 17:44
Playing background music in Flutter with assets_audio_player 1.0.1
import 'package:flutter/material.dart';
import 'package:assets_audio_player/assets_audio_player.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
@MarkOSullivan94
MarkOSullivan94 / gist:bb3f0ea1eb158503f3235339bc23dae0
Created May 13, 2018 11:59
TextFormField: obsecureText causing physical keyboard not to work on Pixel 2XL (API 27) emulated device
@override
Widget build(BuildContext context) {
return new Scaffold(
body: new Container(
padding: EdgeInsets.all(20.0),
child: new Form(
key: this._formKey,
child: new Column(
mainAxisAlignment: MainAxisAlignment.center,
@MarkOSullivan94
MarkOSullivan94 / Linux Setup
Last active March 7, 2016 17:22
Easy linux set up
#!/bin/sh
# Created by Mark O'Sullivan - 30th January 2016
# Update everything
apt-get -y update
apt-get -y dist-upgrade
# Adding packages
sudo add-apt-repository -y ppa:webupd8team/java
Just a reminder for future projects that these are the sizes needed in the mipmap directories.
mipmap-mdpi = 48x48
mipmap-hdpi = 72x72
mipmap-xhdpi = 96x96
mipmap-xxhdpi = 144x144