Flutter自定义按钮插件laokyc_button的使用

Flutter 自定义按钮插件 laokyc_button 的使用

特性

LaoKYC 登录按钮 是一个 Flutter 包,可以帮助您的客户端通过 LaoKYC 连接到您的应用。此包由 LaoKYC 开发。

该包将帮助您为那些无法通过常规方式注册到您的应用的客户提供可选登录功能。

安装

pubspec.yaml 文件中添加以下代码:

dependencies:
    laokyc_button: ^0.8.8

使用

导入包

import 'package:laokyc_button/laokyc_login_button.dart';

添加参数

LaoKYCButton(
  clientId: 'Your clientId', // 您的 clientId
  clientSecret: 'Your clientSecret', // 您的 clientSecret
  redirectUrl: 'Your redirectUrl', // 您的重定向 URL
  route: 'Your page after client login success', // 客户登录成功后的页面
  locale: const Locale('en') or const Locale('lo'), // 选择语言以显示登录对话框,'lo' 表示老挝语,'en' 表示英语
  scope: 'This will be provide by LaoKYC', // 这将由 LaoKYC 提供
);

请注意,所有这些参数将由 LaoKYC 提供。

电子邮件 : partner@sbg.com
电话 : +8562058988895

额外信息

在 Android 项目中配置

build.gradle 中添加以下代码
defaultConfig {
  .
  .
  manifestPlaceholders = [
      'appAuthRedirectScheme': 'Your Redirect Url' // 您的重定向 URL
  ]
}
AndroidManifest.xml 中添加以下代码
<queries>
  <intent>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data android:scheme="https" />
  </intent>
  <intent>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.APP_BROWSER" />
    <data android:scheme="https" />
  </intent>
</queries>
最终,在客户登录成功后的页面获取数据
pubspec.yaml 中添加以下代码
dependencies:
  shared_preferences: ^2.0.6
LoginPage.dart 中添加以下代码
class LoginPage extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('LaoKYC 登录'),
      ),
      body: Center(
        child: LaoKYCButton(
          clientId: 'Your clientId',
          clientSecret: 'Your clientSecret',
          redirectUrl: 'Your redirectUrl',
          scope: 'This will be provide by LaoKYC',
          route: 'Your page after client login success',
          locale: const Locale('en') or const Locale('lo'), // 选择语言以显示登录对话框,'lo' 表示老挝语,'en' 表示英语
        ),
      ),
    );
  }
}
DashboardPage.dart 中添加以下代码
String? accessToken;

getPref() async {
  SharedPreferences prefs = await SharedPreferences.getInstance();
  setState(() {
    accessToken = prefs.getString('access_token');
  });
}

[@override](/user/override)
void initState() {
  super.initState();
  getPref();
}

更多关于Flutter自定义按钮插件laokyc_button的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter自定义按钮插件laokyc_button的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


laokyc_button 是一个自定义的 Flutter 按钮插件,它可以帮助你快速创建具有自定义样式的按钮。以下是如何在 Flutter 项目中使用 laokyc_button 插件的步骤:

1. 添加依赖

首先,你需要在 pubspec.yaml 文件中添加 laokyc_button 插件的依赖。

dependencies:
  flutter:
    sdk: flutter
  laokyc_button: ^1.0.0  # 请确保使用最新版本

然后运行 flutter pub get 来安装依赖。

2. 导入插件

在你的 Dart 文件中导入 laokyc_button 插件。

import 'package:laokyc_button/laokyc_button.dart';

3. 使用 LaokycButton

现在你可以在你的 Flutter 应用中使用 LaokycButton 了。以下是一个简单的示例:

import 'package:flutter/material.dart';
import 'package:laokyc_button/laokyc_button.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Laokyc Button Example'),
        ),
        body: Center(
          child: LaokycButton(
            onPressed: () {
              print('Button Pressed!');
            },
            text: 'Click Me',
            color: Colors.blue,
            textColor: Colors.white,
            borderRadius: 8.0,
            padding: EdgeInsets.symmetric(horizontal: 20.0, vertical: 10.0),
          ),
        ),
      ),
    );
  }
}

4. 参数说明

LaokycButton 提供了多个自定义参数,你可以根据需要调整按钮的样式和行为:

  • onPressed: 按钮点击时触发的回调函数。
  • text: 按钮上显示的文本。
  • color: 按钮的背景颜色。
  • textColor: 按钮文本的颜色。
  • borderRadius: 按钮的圆角半径。
  • padding: 按钮的内边距。
  • elevation: 按钮的阴影高度。
  • disabledColor: 按钮禁用时的背景颜色。
  • disabledTextColor: 按钮禁用时的文本颜色。
  • isLoading: 是否显示加载动画(通常用于异步操作)。
  • loadingIndicatorColor: 加载动画的颜色。

5. 更多自定义

你还可以通过传递 child 参数来自定义按钮的内容,而不是使用 text 参数。

LaokycButton(
  onPressed: () {
    print('Custom Button Pressed!');
  },
  color: Colors.green,
  borderRadius: 12.0,
  child: Row(
    mainAxisAlignment: MainAxisAlignment.center,
    children: [
      Icon(Icons.star, color: Colors.white),
      SizedBox(width: 8.0),
      Text('Star Button', style: TextStyle(color: Colors.white)),
    ],
  ),
),

6. 处理异步操作

如果按钮需要处理异步操作(例如网络请求),你可以使用 isLoading 参数来显示加载动画。

bool _isLoading = false;

LaokycButton(
  onPressed: () async {
    setState(() {
      _isLoading = true;
    });

    // 模拟异步操作
    await Future.delayed(Duration(seconds: 2));

    setState(() {
      _isLoading = false;
    });
  },
  text: 'Submit',
  color: Colors.orange,
  textColor: Colors.white,
  isLoading: _isLoading,
),
回到顶部