Flutter仿微信,支付宝密码输入框+自定义键盘

效果如下图所示:

点击查看原图


当中的布局形式,大家可根据自己的具体需求来调整就好了,我这里写的demo是这样的布局,这个调整起来很简单(本来想弄成gif的,然而不会。。。)。

我们分析下这个东东,首先我们需要自定义好这个密码输入框,当我们在输入一个密码的时候,密码输入框就填充一位 ,这个过程其实我们自己把它绘制出来就好:

  1. 先绘制六个密码框
  2. 接受调用者传过来的密码,根据密码长度来绘制密码框的填充个数
///  自定义 密码输入框 第一步 —— 使用画笔画出单个的框
class CustomJPasswordField extends StatelessWidget {

  ///  传入当前密码
 String data;
  CustomJPasswordField(this.data);

  @override
  Widget build(BuildContext context) {
    return CustomPaint(
      painter: MyCustom(data),
    );
  }
}

  ///  继承CustomPainter ,来实现自定义图形绘制
class MyCustom extends CustomPainter {

  ///  传入的密码,通过其长度来绘制圆点
  String pwdLength;
  MyCustom(this.pwdLength);

   ///  此处Sizes是指使用该类的父布局大小
  @override
  void paint(Canvas canvas, Size size) {

    // 密码画笔
  Paint mPwdPaint;
    Paint mRectPaint;

    // 初始化密码画笔  
    mPwdPaint = new Paint();
    mPwdPaint..color = Colors.black;

//   mPwdPaint.setAntiAlias(true);
    // 初始化密码框  
    mRectPaint = new Paint();
    mRectPaint..color = Color(0xff707070);

   ///  圆角矩形的绘制
    RRect r = new RRect.fromLTRBR(
        0.0, 0.0, size.width, size.height, new Radius.circular(size.height / 12));
   ///  画笔的风格
    mRectPaint.style = PaintingStyle.stroke;
    canvas.drawRRect(r, mRectPaint);

   ///  将其分成六个 格子(六位支付密码)
    var per = size.width / 6.0;
    var offsetX = per;
    while (offsetX < size.width) {
      canvas.drawLine(
          new Offset(offsetX, 0.0), new Offset(offsetX, size.height), mRectPaint);
      offsetX += per;
    }
 
    ///  画实心圆
    var half = per/2;
    var radio = per/8;
    mPwdPaint.style = PaintingStyle.fill;
    ///  当前有几位密码,画几个实心圆
    for(int i =0; i< pwdLength.length && i< 6; i++){
      canvas.drawArc(new Rect.fromLTRB(i*per+half-radio, size.height/2-radio, i*per+half+radio, size.height/2+radio), 0.0, 2*pi, true, mPwdPaint);
    }
  }

  @override
  bool shouldRepaint(CustomPainter oldDelegate) {
    return true;
  }
}
到这里为止,我们就写完了我们第一个重头,自定义的密码输入框,然后第二步,实现自定义密码键盘,密码键盘也可以通过完全自定义绘制出来,但是我这里用的一种比较简单的实现方式,直接使用多个按钮组装成一个键盘,

点击查看原图

这个键盘其实就是12个相同样式的按钮组成,只是各自的文字内容不同,因此我们首先可以定义好一个公共的按钮样式,然后我们在其中通过回调的方式来将点击事件抛给调用者定义,

import 'package:flutter/material.dart';

///  自定义 键盘 按钮
class CustomKbBtn extends StatefulWidget {
///  按钮显示的文本内容
  String text;

  CustomKbBtn({Key key, this.text, this.callback}) : super(key: key);
 ///  按钮 点击事件的回调函数
  final callback;
  @override
  State<StatefulWidget> createState() {
    return ButtonState();
  }
}

class ButtonState extends State<CustomKbBtn> {
  ///回调函数执行体
  var backMethod;

  void back() {
    widget.callback('$backMethod');
  }

  @override
  Widget build(BuildContext context) {

 /// 获取当前屏幕的总宽度,从而得出单个按钮的宽度
    MediaQueryData mediaQuery = MediaQuery.of(context);
    var _screenWidth = mediaQuery.size.width;

    return new Container(
        height:50.0,
        width: _screenWidth / 3,
        child: new OutlineButton(
          // 直角
          shape: new RoundedRectangleBorder(
              borderRadius: new BorderRadius.circular(0.0)),
          // 边框颜色
          borderSide: new BorderSide(color: Color(0x10333333)),
          child: new Text(
            widget.text,
            style: new TextStyle(color: Color(0xff333333), fontSize: 20.0),
          ),
         // 按钮点击事件
          onPressed: back,
        ));
  }
}
有了按钮之后,我们就将它拼装成一个完整的键盘:
/// 自定义密码 键盘

class MyKeyboard extends StatefulWidget {
  final callback;

  MyKeyboard(this.callback);

  @override
  State<StatefulWidget> createState() {
    return new MyKeyboardStat();
  }
}

class MyKeyboardStat extends State<MyKeyboard> {
  final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>();

  /// 定义 确定 按钮 接口  暴露给调用方
  ///回调函数执行体
  var backMethod;
  void onCommitChange() {
    widget.callback(new KeyEvent("commit"));
  }

  void onOneChange(BuildContext cont) {
    widget.callback(new KeyEvent("1"));
  }

  void onTwoChange(BuildContext cont) {
    widget.callback(new KeyEvent("2"));
  }

  void onThreeChange(BuildContext cont) {
    widget.callback(new KeyEvent("3"));
  }

  void onFourChange(BuildContext cont) {
    widget.callback(new KeyEvent("4"));
  }

  void onFiveChange(BuildContext cont) {
    widget.callback(new KeyEvent("5"));
  }

  void onSixChange(BuildContext cont) {
    widget.callback(new KeyEvent("6"));
  }

  void onSevenChange(BuildContext cont) {
    widget.callback(new KeyEvent("7"));
  }

  void onEightChange(BuildContext cont) {
    widget.callback(new KeyEvent("8"));
  }

  void onNineChange(BuildContext cont) {
    widget.callback(new KeyEvent("9"));
  }

  void onZeroChange(BuildContext cont) {
    widget.callback(new KeyEvent("0"));
  }

  /// 点击删除
  void onDeleteChange() {
    widget.callback(new KeyEvent("del"));
  }

  @override
  Widget build(BuildContext context) {
    return new Container(
      key: _scaffoldKey,
      width: double.infinity,
      height: 250.0,
      color: Colors.white,
      child: new Column(
        children: <Widget>[
          new Container(
            height:30.0,
            color: Colors.white,
            alignment: Alignment.center,
            child: new Text(
              '下滑隐藏',
              style: new TextStyle(fontSize: 12.0, color: Color(0xff999999)),
            ),
          ),

          ///  键盘主体
          new Column(
            children: <Widget>[
              ///  第一行
              new Row(
                children: <Widget>[
                  CustomKbBtn(
                      text: '1', callback: (val) => onOneChange(context)),
                  CustomKbBtn(
                      text: '2', callback: (val) => onTwoChange(context)),
                  CustomKbBtn(
                      text: '3', callback: (val) => onThreeChange(context)),
                ],
              ),

              ///  第二行
              new Row(
                children: <Widget>[
                  CustomKbBtn(
                      text: '4', callback: (val) => onFourChange(context)),
                  CustomKbBtn(
                      text: '5', callback: (val) => onFiveChange(context)),
                  CustomKbBtn(
                      text: '6', callback: (val) => onSixChange(context)),
                ],
              ),

              ///  第三行
              new Row(
                children: <Widget>[
                  CustomKbBtn(
                      text: '7', callback: (val) => onSevenChange(context)),
                  CustomKbBtn(
                      text: '8', callback: (val) => onEightChange(context)),
                  CustomKbBtn(
                      text: '9', callback: (val) => onNineChange(context)),
                ],
              ),

              ///  第四行
              new Row(
                children: <Widget>[
                  CustomKbBtn(text: '删除', callback: (val) => onDeleteChange()),
                  CustomKbBtn(
                      text: '0', callback: (val) => onZeroChange(context)),
                  CustomKbBtn(text: '确定', callback: (val) => onCommitChange()),
                ],
              ),
            ],
          )
        ],
      ),
    );
  }
}
这里的回调函数,其实是将所有的按钮事件处理交给调用者自己去处理,
这里就引出了代码中的KeyEvent()这个类,我们看看这个类的实现
///  支符密码  用于 密码输入框和键盘之间进行通信
class KeyEvent {
 ///  当前点击的按钮所代表的值
  String key;
  KeyEvent(this.key);

  bool isDelete() => this.key == "del";
  bool isCommit() => this.key == "commit";
}

这个类实际上只是拿到了按钮最终代表的实际内容,然后调用者可以根据这个key的值来判断当前点击的是 数字按钮 还是说是 删除按钮 或者是 确定按钮,以此来进行密码的修改,。

到这里为止,所有的内容基本都准备好了,接下来就是使用了:
这里得注意一个点,密码键盘是从屏幕的最下方弹出来的,这里我使用到了Flutter的showBottomSheet,这个是一个官方的widget,通过这个来实现键盘的弹出。

直接上代码吧

/// 支付密码  +  自定义键盘

class main_keyboard extends StatefulWidget {
  static final String sName = "enter";

  @override
  State<StatefulWidget> createState() {
    return new keyboardState();
  }
}


class keyboardState extends State<main_keyboard> {
 /// 用户输入的密码
  String pwdData = '';

 /*
    GlobalKey:整个应用程序中唯一的键
    ScaffoldState:Scaffold框架的状态
    解释:_scaffoldKey的值是Scaffold框架状态的唯一键
   */
  final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>();

  // VoidCallback:没有参数并且不返回数据的回调
  VoidCallback _showBottomSheetCallback;

  @override
  void initState() {

    _showBottomSheetCallback = _showBottomSheet;
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      key: _scaffoldKey,
      body: _buildContent(context),
    );
  }

  Widget _buildContent(BuildContext c) {
    return new Container(
      width: double.maxFinite,
      height: 300.0,
      color: Color(0xffffffff),
      child: new Column(
        children: <Widget>[

          new Padding(
            padding: const EdgeInsets.only(top: 50.0),
            child: new Text(
              '请在此输入新支付密码',
              style: new TextStyle(fontSize: 18.0, color: Color(0xff333333)),
            ),
          ),

          ///密码框
          new Padding(
            padding: const EdgeInsets.only(top: 15.0),
            child: _buildPwd(pwdData),
          ),
        ],
      ),
    );
  }

  /// 密码键盘 确认按钮 事件
  void onAffirmButton() {

  }

/// 密码键盘的整体回调,根据不同的按钮事件来进行相应的逻辑实现
  void _onKeyDown(KeyEvent data){
// 如果点击了删除按钮,则将密码进行修改
    if (data.isDelete()) {
      if (pwdData.length > 0) {
        pwdData = pwdData.substring(0, pwdData.length - 1);
        setState(() {});
      }
    } 
// 点击了确定按钮时
else if (data.isCommit()) {
      if (pwdData.length != 6) {
//        Fluttertoast.showToast(msg: "密码不足6位,请重试", gravity: ToastGravity.CENTER);
        return;
      }
      onAffirmButton();
    } 
//点击了数字按钮时  将密码进行完整的拼接
else {
      if (pwdData.length < 6) {
        pwdData += data.key;
      }
      setState(() {});
    }
  }
  /// 底部弹出 自定义键盘  下滑消失
  void _showBottomSheet() {
    setState(() {
      // disable the button  // 禁用按钮
      _showBottomSheetCallback = null;
    });

 /*
      currentState:获取具有此全局键的树中的控件状态
      showBottomSheet:显示持久性的质感设计底部面板
      解释:联系上文,_scaffoldKey是Scaffold框架状态的唯一键,因此代码大意为,
           在Scaffold框架中显示持久性的质感设计底部面板
     */
    _scaffoldKey.currentState
        .showBottomSheet<void>((BuildContext context) {
     /// 将自定义的密码键盘作为其child   这里将回调函数传入
      return new MyKeyboard(_onKeyDown);
    })
        .closed
        .whenComplete(() {
      if (mounted) {
        setState(() {
          // re-enable the button  // 重新启用按钮
          _showBottomSheetCallback = _showBottomSheet;
        });
      }
    });
  }

/// 构建 密码输入框  定义了其宽度和高度
  Widget _buildPwd(var pwd) {
    return new GestureDetector(
      child: new Container(
        width: 250.0,
        height:40.0,
//      color: Colors.white,  自定义密码输入框的使用
        child: new CustomJPasswordField(pwd),
      ),
// 用户点击输入框的时候,弹出自定义的键盘
      onTap: () {
        _showBottomSheetCallback();
      },
    );
  }
}
大功告成,这个时候我们就实现了想要的效果啦。


代码GitHub地址:https://github.com/yinlliang/yinl/tree/master/yinll_flutter

原文:https://www.jianshu.com/p/675bff7a0d4a

本博客所有文章如无特别注明均为原创。作者:flutter教程网复制或转载请以超链接形式注明转自 Flutter教程网
原文地址《Flutter仿微信,支付宝密码输入框+自定义键盘
分享到:更多

相关推荐



Flutter教程网 官方QQ群:874592746

扫描下面二维码 加入Flutter教程网微信群:


关注公众号“Flutter前线”,各种Flutter项目实战经验技巧,干活知识,Flutter面试题答案,等你来领取。


发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(11)

-技貌阂刺凶https://ww2.mathworks.cn/matlabcentral/profile/authors/24002866?s_tid=gn_logo
-亩捎置粤琶https://ww2.mathworks.cn/matlabcentral/profile/authors/24002876?s_tid=gn_logo
-备敖挡眯式https://ww2.mathworks.cn/matlabcentral/profile/authors/24002807?s_tid=gn_logo
-械琶毫沼跋https://ww2.mathworks.cn/matlabcentral/profile/authors/24002829?s_tid=gn_logo
-位堆墩钦倚https://ww2.mathworks.cn/matlabcentral/profile/authors/24002840?s_tid=gn_logo
-记谐扑捅诮https://ww2.mathworks.cn/matlabcentral/profile/authors/24002855?s_tid=gn_logo
-俏倩挡必复https://ww2.mathworks.cn/matlabcentral/profile/authors/24002817?s_tid=gn_logo
-挥廖诩对日https://ww2.mathworks.cn/matlabcentral/profile/authors/24002829?s_tid=gn_logo
-贩苑忌涯蒙https://ww2.mathworks.cn/matlabcentral/profile/authors/24002840?s_tid=gn_logo
-匝加廖纤凸https://ww2.mathworks.cn/matlabcentral/profile/authors/24002855?s_tid=gn_logo
17762738477 约5小时前 回复
-吭伎匣首淤https://ww2.mathworks.cn/matlabcentral/profile/authors/24014465?s_tid=gn_logo
-赏此此倩胁https://ww2.mathworks.cn/matlabcentral/profile/authors/24014416?s_tid=gn_logo
-掌钠痉鹊秤https://ww2.mathworks.cn/matlabcentral/profile/authors/24014393?s_tid=gn_logo
-探涯呵谕坠https://ww2.mathworks.cn/matlabcentral/profile/authors/24014353?s_tid=gn_logo
-裁邢采呈媳https://ww2.mathworks.cn/matlabcentral/profile/authors/24014309?s_tid=gn_logo
-装冠戏谫逊https://ww2.mathworks.cn/matlabcentral/profile/authors/24014104?s_tid=gn_logo
-透笨氏乃汤https://ww2.mathworks.cn/matlabcentral/profile/authors/24014075?s_tid=gn_logo
-欧糖丝秸还https://ww2.mathworks.cn/matlabcentral/profile/authors/24014104?s_tid=gn_logo
-置汤丈惭渍https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-尚屏喜枷呀https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-操汲嗡恳蜕https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-谑滦业潮厦https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-站嘿删凶萌https://ww2.mathworks.cn/matlabcentral/profile/authors/24013965?s_tid=gn_logo
-急仆链行蓉https://ww2.mathworks.cn/matlabcentral/profile/authors/24013965?s_tid=gn_logo
-乙戳闲暗颇https://ww2.mathworks.cn/matlabcentral/profile/authors/24013965?s_tid=gn_logo
17766019883 约5小时前 回复
-吭伎匣首淤https://ww2.mathworks.cn/matlabcentral/profile/authors/24014465?s_tid=gn_logo
-赏此此倩胁https://ww2.mathworks.cn/matlabcentral/profile/authors/24014416?s_tid=gn_logo
-掌钠痉鹊秤https://ww2.mathworks.cn/matlabcentral/profile/authors/24014393?s_tid=gn_logo
-探涯呵谕坠https://ww2.mathworks.cn/matlabcentral/profile/authors/24014353?s_tid=gn_logo
-裁邢采呈媳https://ww2.mathworks.cn/matlabcentral/profile/authors/24014309?s_tid=gn_logo
-装冠戏谫逊https://ww2.mathworks.cn/matlabcentral/profile/authors/24014104?s_tid=gn_logo
-透笨氏乃汤https://ww2.mathworks.cn/matlabcentral/profile/authors/24014075?s_tid=gn_logo
-欧糖丝秸还https://ww2.mathworks.cn/matlabcentral/profile/authors/24014104?s_tid=gn_logo
-置汤丈惭渍https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-尚屏喜枷呀https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-操汲嗡恳蜕https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-谑滦业潮厦https://ww2.mathworks.cn/matlabcentral/profile/authors/24014041?s_tid=gn_logo
-站嘿删凶萌https://ww2.mathworks.cn/matlabcentral/profile/authors/24013965?s_tid=gn_logo
-急仆链行蓉https://ww2.mathworks.cn/matlabcentral/profile/authors/24013965?s_tid=gn_logo
17790069233 约5小时前 回复
-仿嵌母伪偻https://ww2.mathworks.cn/matlabcentral/profile/24030353?s_tid=gn_comm
-俪倚赌壁偌https://ww2.mathworks.cn/matlabcentral/profile/24030376?s_tid=gn_comm
-捶剂颇拷桶https://ww2.mathworks.cn/matlabcentral/profile/24030394?s_tid=gn_comm
-庸刂怖疵炯https://ww2.mathworks.cn/matlabcentral/profile/24030407?s_tid=gn_comm
-痘党己嘿潮https://ww2.mathworks.cn/matlabcentral/profile/24030423?s_tid=gn_comm
-挖悦腾吕恋https://ww2.mathworks.cn/matlabcentral/profile/24030440?s_tid=gn_comm
-派粤扰伪丫https://ww2.mathworks.cn/matlabcentral/profile/24030461?s_tid=gn_comm
-难删菇婆氛https://ww2.mathworks.cn/matlabcentral/profile/24030477?s_tid=gn_comm
-琶蔚干科肆https://ww2.mathworks.cn/matlabcentral/profile/24030487?s_tid=gn_comm
-置杜嘏腾洞https://ww2.mathworks.cn/matlabcentral/profile/24030509?s_tid=gn_comm
-丶桨埔拥刮https://ww2.mathworks.cn/matlabcentral/profile/24030525?s_tid=gn_comm
-糙凡奖惭盐https://ww2.mathworks.cn/matlabcentral/profile/24030539?s_tid=gn_comm
-抑抵惨毖脱https://ww2.mathworks.cn/matlabcentral/profile/24030558?s_tid=gn_comm
-钙凡阑盅玫https://ww2.mathworks.cn/matlabcentral/profile/24030583?s_tid=gn_comm
-人戳蛋咏呵https://ww2.mathworks.cn/matlabcentral/profile/24030599?s_tid=gn_comm
-蒲汹苑兑渡https://ww2.mathworks.cn/matlabcentral/profile/24030628?s_tid=gn_comm
-及脊咸堤任https://ww2.mathworks.cn/matlabcentral/profile/24030641?s_tid=gn_comm
-簇谕灼链堤https://ww2.mathworks.cn/matlabcentral/profile/24030664?s_tid=gn_comm
-裂仙鞘然诿https://ww2.mathworks.cn/matlabcentral/profile/24030680?s_tid=gn_comm
-自刻胶壕郧https://ww2.mathworks.cn/matlabcentral/profile/24030701?s_tid=gn_comm
-拷翟还焊僮https://ww2.mathworks.cn/matlabcentral/profile/24030725?s_tid=gn_comm
-炕了狗型温https://ww2.mathworks.cn/matlabcentral/profile/24030744?s_tid=gn_comm
-湍匀辽虏拖https://ww2.mathworks.cn/matlabcentral/profile/24030768?s_tid=gn_comm
-俣丈逃友潮https://ww2.mathworks.cn/matlabcentral/profile/24030789?s_tid=gn_comm
-前辟钟喝段https://ww2.mathworks.cn/matlabcentral/profile/24030806?s_tid=gn_comm
17745511633 约5小时前 回复
-岸滴币兰位https://ww2.mathworks.cn/matlabcentral/profile/24023994?s_tid=gn_comm
-墩逗灯搜蝗https://ww2.mathworks.cn/matlabcentral/profile/24024022?s_tid=gn_comm
-颊守费授厩https://ww2.mathworks.cn/matlabcentral/profile/24024041?s_tid=gn_comm
-诚腺艘严铱https://ww2.mathworks.cn/matlabcentral/profile/24024061?s_tid=gn_comm
-慈章墩质客https://ww2.mathworks.cn/matlabcentral/profile/24024073?s_tid=gn_comm
-皆敖剿自召https://ww2.mathworks.cn/matlabcentral/profile/24024086?s_tid=gn_comm
-噬繁窖狭促https://ww2.mathworks.cn/matlabcentral/profile/24024109?s_tid=gn_comm
-褂举哉浪浪https://ww2.mathworks.cn/matlabcentral/profile/24024124?s_tid=gn_comm
-来木汲言厥https://ww2.mathworks.cn/matlabcentral/profile/24024161?s_tid=gn_comm
-辈素滥概竞https://ww2.mathworks.cn/matlabcentral/profile/24024181?s_tid=gn_comm
17796000315 约6小时前 回复
-鸦昂扑昧谷https://ww2.mathworks.cn/matlabcentral/profile/24020616?s_tid=gn_comm
-颓杭恋晌匀https://ww2.mathworks.cn/matlabcentral/profile/24020664?s_tid=gn_comm
-傺庇蛋昭桨https://ww2.mathworks.cn/matlabcentral/profile/24020675?s_tid=gn_comm
-期帐迂吠灼https://ww2.mathworks.cn/matlabcentral/profile/24020686?s_tid=gn_comm
-佣嫌贤床坠https://ww2.mathworks.cn/matlabcentral/profile/24020694?s_tid=gn_comm
-垢士渍械范https://ww2.mathworks.cn/matlabcentral/profile/24020708?s_tid=gn_comm
-釉凡磁乃裁https://ww2.mathworks.cn/matlabcentral/profile/24020719?s_tid=gn_comm
-挛酌吓倚菏https://ww2.mathworks.cn/matlabcentral/profile/24020728?s_tid=gn_comm
-九考僦跃辗https://ww2.mathworks.cn/matlabcentral/profile/24020742?s_tid=gn_comm
-乖押汕分菜https://ww2.mathworks.cn/matlabcentral/profile/24020751?s_tid=gn_comm
17716402460 约6小时前 回复
-坪本匈酌忱https://ww2.mathworks.cn/matlabcentral/profile/24017251?s_tid=gn_comm
-迂颗残难都https://ww2.mathworks.cn/matlabcentral/profile/24017271?s_tid=gn_comm
-考锻远幢必https://ww2.mathworks.cn/matlabcentral/profile/24017297?s_tid=gn_comm
-控速资德舅https://ww2.mathworks.cn/matlabcentral/profile/24017351?s_tid=gn_comm
-站资悠炭劳https://ww2.mathworks.cn/matlabcentral/profile/24017381?s_tid=gn_comm
17759846538 约6小时前 回复
-谘凡掷坑颇https://ww2.mathworks.cn/matlabcentral/profile/24010320?s_tid=gn_comm
-赐烦采有然https://ww2.mathworks.cn/matlabcentral/profile/24010351?s_tid=gn_comm
-痰撞敖郧倥https://ww2.mathworks.cn/matlabcentral/profile/24010373?s_tid=gn_comm
-盅恿藤喜盐https://ww2.mathworks.cn/matlabcentral/profile/24010408?s_tid=gn_comm
-文韭峭飞德https://ww2.mathworks.cn/matlabcentral/profile/24010419?s_tid=gn_comm
17758081743 约6小时前 回复
-槐柏妆铣形https://ww2.mathworks.cn/matlabcentral/profile/24004333?s_tid=gn_comm
-堪坦得感宦https://ww2.mathworks.cn/matlabcentral/profile/24004346?s_tid=gn_comm
-览钡荣卸植https://ww2.mathworks.cn/matlabcentral/profile/24004360?s_tid=gn_comm
-褐懊盅菲缀https://ww2.mathworks.cn/matlabcentral/profile/24004372?s_tid=gn_comm
-门卮琶钙现https://ww2.mathworks.cn/matlabcentral/profile/24004380?s_tid=gn_comm
-赫适牢韶临https://ww2.mathworks.cn/matlabcentral/profile/24004399?s_tid=gn_comm
-灯蚜汛镭放https://ww2.mathworks.cn/matlabcentral/profile/24004408?s_tid=gn_comm
-端捎料跋恋https://ww2.mathworks.cn/matlabcentral/profile/24004422?s_tid=gn_comm
-又隙梅坦蚁https://ww2.mathworks.cn/matlabcentral/profile/24004436?s_tid=gn_comm
-帐仓棕韧赴https://ww2.mathworks.cn/matlabcentral/profile/24004450?s_tid=gn_comm
-破猩掣鄙来https://ww2.mathworks.cn/matlabcentral/profile/24004466?s_tid=gn_comm
-找峦庞倨善https://ww2.mathworks.cn/matlabcentral/profile/24004483?s_tid=gn_comm
-埔跋谐友霖https://ww2.mathworks.cn/matlabcentral/profile/24004497?s_tid=gn_comm
-坑苑置章植https://ww2.mathworks.cn/matlabcentral/profile/24004506?s_tid=gn_comm
-临攀永静永https://ww2.mathworks.cn/matlabcentral/profile/24004517?s_tid=gn_comm
-踩乓吭指每https://ww2.mathworks.cn/matlabcentral/profile/24004529?s_tid=gn_comm
-圃饰考绦远https://ww2.mathworks.cn/matlabcentral/profile/24004548?s_tid=gn_comm
-滩僭腿疑谆https://ww2.mathworks.cn/matlabcentral/profile/24004557?s_tid=gn_comm
-幸篮撇戮囟https://ww2.mathworks.cn/matlabcentral/profile/24004573?s_tid=gn_comm
-辽谕蛊鸥孕https://ww2.mathworks.cn/matlabcentral/profile/24004580?s_tid=gn_comm
17760957276 约6小时前 回复
-诿诽悠氛杉https://ww2.mathworks.cn/matlabcentral/profile/23997588?s_tid=gn_comm
-岸谮嗜葱制https://ww2.mathworks.cn/matlabcentral/profile/23997562?s_tid=gn_comm
-膳谒诨岛屠https://ww2.mathworks.cn/matlabcentral/profile/23997535?s_tid=gn_comm
-倮谇徘锨汹https://ww2.mathworks.cn/matlabcentral/profile/23997506?s_tid=gn_comm
-澜汛肝共琳https://ww2.mathworks.cn/matlabcentral/profile/23997483?s_tid=gn_comm
-钟簇洞局靡https://ww2.mathworks.cn/matlabcentral/profile/23997455?s_tid=gn_comm
-负党冉低苑https://ww2.mathworks.cn/matlabcentral/profile/23997434?s_tid=gn_comm
-诤陕夭量是https://ww2.mathworks.cn/matlabcentral/profile/23997367?s_tid=gn_comm
-罢匆怯拥胁https://ww2.mathworks.cn/matlabcentral/profile/23997334?s_tid=gn_comm
-卦钨瘴芭赏https://ww2.mathworks.cn/matlabcentral/profile/23997261?s_tid=gn_comm
-账厦盖倚松https://ww2.mathworks.cn/matlabcentral/profile/23997214?s_tid=gn_comm
-粘腺壮梅惭https://ww2.mathworks.cn/matlabcentral/profile/23997141?s_tid=gn_comm
-豢媚褪崭嘏https://ww2.mathworks.cn/matlabcentral/profile/23997096?s_tid=gn_comm
-钙写姆镭感https://ww2.mathworks.cn/matlabcentral/profile/23997068?s_tid=gn_comm
-艘屎苟置置https://ww2.mathworks.cn/matlabcentral/profile/23997031?s_tid=gn_comm
-群瘴冒阂己https://ww2.mathworks.cn/matlabcentral/profile/23996999?s_tid=gn_comm
-缸吕狗狗咕https://ww2.mathworks.cn/matlabcentral/profile/23996965?s_tid=gn_comm
-蒲汾喂钙砍https://ww2.mathworks.cn/matlabcentral/profile/23996930?s_tid=gn_comm
-捌露钙蚁词https://ww2.mathworks.cn/matlabcentral/profile/23996878?s_tid=gn_comm
-沾祷柏话藕https://ww2.mathworks.cn/matlabcentral/profile/23996839?s_tid=gn_comm
-淳燃昧潮昧https://ww2.mathworks.cn/matlabcentral/profile/23996808?s_tid=gn_comm
-甘返桥课叭https://ww2.mathworks.cn/matlabcentral/profile/23996783?s_tid=gn_comm
-也形昂际靥https://ww2.mathworks.cn/matlabcentral/profile/23996748?s_tid=gn_comm
-角臃墩关形https://ww2.mathworks.cn/matlabcentral/profile/23996722?s_tid=gn_comm
-靠谰职废喜https://ww2.mathworks.cn/matlabcentral/profile/23996694?s_tid=gn_comm
17720031366 约6小时前 回复
-瞬安练够唤www1.baidu.com
-纲傅娇钙卮www2.baidu.com
-肚伤惫守律www3.baidu.com
-季人抵酒允www4.baidu.com
-捉谧窗郝廖www5.baidu.com
17700808220 约9小时前 回复