Skip to content

Instantly share code, notes, and snippets.

View learnpainless's full-sized avatar

Learn Pain Less learnpainless

View GitHub Profile
@learnpainless
learnpainless / login_view.dart
Created September 27, 2022 04:42
Login screen using GetX in Flutter
import '../controllers/login_controller.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
class LoginView extends GetView<LoginController> {
const LoginView({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
import 'package:flutter/material.dart';
import 'package:flutter_cookie_proto/api_provider.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
import 'package:dio/dio.dart';
class ApiProvider {
Dio _dio;
String aToken = '';
final BaseOptions options = new BaseOptions(
baseUrl: 'http://3.8.141.177:6001/gateway',
connectTimeout: 15000,
receiveTimeout: 13000,
import 'package:flutter/material.dart';
import 'package:flutter_provider_proto/providers/login_provider.dart';
import 'package:flutter_provider_proto/screens/home_screen.dart';
import 'package:flutter_provider_proto/screens/login_screen.dart';
import 'package:flutter_provider_proto/screens/splash_screen.dart';
import 'package:provider/provider.dart';
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
import 'package:flutter/material.dart';
import 'package:flutter_provider_proto/providers/login_provider.dart';
import 'package:provider/provider.dart';
class LoginScreen extends StatefulWidget {
@override
_LoginScreenState createState() => _LoginScreenState();
}
class _LoginScreenState extends State<LoginScreen> {
import 'package:flutter/material.dart';
import 'package:firebase_auth/firebase_auth.dart';
enum AppState { initial, authenticated, authenticating, unauthenticated }
class LoginProvider with ChangeNotifier {
FirebaseAuth _auth;
FirebaseUser _user;
AppState _appState = AppState.initial;
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="match_parent"
android:padding="8dp"
android:layout_height="wrap_content">
<ImageView
android:layout_width="48dp"
android:id="@+id/btnPlay"
android:layout_gravity="center"
android:src="@drawable/ic_baseline_play_circle_filled_24"
package com.learnpainless.speechtextrecyclerview
import android.os.Build
import android.speech.tts.TextToSpeech
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import kotlinx.android.synthetic.main.adapter_item_speech.view.*
@learnpainless
learnpainless / activity_main.xml
Created July 27, 2020 18:35
TextToSpeech library
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
package com.learnpainless.speechtextrecyclerview
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.speech.tts.TextToSpeech
import android.util.Log
import androidx.recyclerview.widget.LinearLayoutManager
import kotlinx.android.synthetic.main.activity_main.*
import java.util.*