Skip to content

Instantly share code, notes, and snippets.

View fabiomsr's full-sized avatar

Fabio Santana fabiomsr

View GitHub Profile
@fabiomsr
fabiomsr / build.gradle
Last active January 11, 2024 16:42
dependencies.gradle example
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
apply plugin: 'me.tatarka.retrolambda'
android {
compileSdkVersion rootProject.androidCompileSdkVersion
buildToolsVersion rootProject.androidBuildToolsVersion
defaultConfig {
minSdkVersion rootProject.androidMinSdkVersion
@fabiomsr
fabiomsr / ByteArray.kt
Last active July 18, 2023 10:53
ByteArray and String extension to add hexadecimal methods in Kotlin
private val HEX_CHARS = "0123456789ABCDEF".toCharArray()
fun ByteArray.toHex() : String{
val result = StringBuffer()
forEach {
val octet = it.toInt()
val firstIndex = (octet and 0xF0).ushr(4)
val secondIndex = octet and 0x0F
result.append(HEX_CHARS[firstIndex])
@fabiomsr
fabiomsr / contact_view.dart
Last active March 9, 2022 19:19
Flutter Contact list view
import 'package:flutter/material.dart';
import '../../data/contact_data.dart';
import 'contact_presenter.dart';
class ContactsPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
return Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
// ...
_createDrawerItem(icon: Icons.event, text: 'Events',
onTap: () => Navigator.pushReplacementNamed(context, Routes.events))),
// ...
],
class EventsPage extends StatelessWidget {
static const String routeName = '/events';
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: AppBar(
title: Text("Events"),
),
drawer: AppDrawer(),
class Routes {
static const String contacts = ContactsPage.routeName;
static const String events = EventsPage.routeName;
static const String notes = NotesPage.routeName;
}
return Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
_createHeader(),
_createDrawerItem(icon: Icons.contacts, text: 'Contacts', onTap: () => ...)
Divider(),
_createDrawerItem(icon: Icons.event, text: 'Events', onTap: () => ...),
ListTile(
return Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
_createHeader(),
_createDrawerItem(icon: Icons.contacts, text: 'Contacts', onTap: () => ...)
Divider(),
_createDrawerItem(icon: Icons.event, text: 'Events', onTap: () => ...)
],
),
return Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
_createHeader(),
_createDrawerItem(
icon: Icons.contacts,
text: 'Contacts',
onTap: () => ...,
],
return Drawer(
child: ListView(
padding: EdgeInsets.zero,
children: <Widget>[
_createHeader()
],
),
);