• 舒大飞
    2019-10-10
    反过来,可以在原生页面中嵌入一小块Flutter视图吗

    作者回复: 可以,Activity内嵌flutterView其实就是这种方式,只是这个视图大小是整个屏幕

    
     2
  • jianwei
    2020-01-08
    floatingActionButton: FloatingActionButton(
        onPressed: () => controller.changeBackground('#FFFFFF'),
    ),

    Future<void> changeBackground(String colorString) async {
        try {
         return _channel.invokeMethod('changeBackgroundColor', <String, dynamic> {
         'color': colorString
         });
        } catch (e) {
        }
    }

    - (void)onMethodCall:(FlutterMethodCall*)call result:(FlutterResult)result {
        if ([call.method isEqualToString:@"changeBackgroundColor"]) {
            NSString *colorString = call.arguments[@"color"];
            if (colorString.length != 0) {
                _templcateView.backgroundColor = [UIColor colorWithHexString:colorString];
                result(@0);
                return;
            }
        }
        result(FlutterMethodNotImplemented);
    }
    展开
    
     1
  • 宇
    2019-09-02
    思考题实现思路

    dart层设置颜色参数的方法:
    changeBackgroundColor(int r, int g, int b) async
      {
        _channel.invokeMethod('changeBackgroundColor', {"r":r, "g":g, "b":b});
      }

    dart层调用:
    controller.changeBackgroundColor(0, 255, 255)

    android native层实现:
    if (methodCall.method.equals("changeBackgroundColor")) {
          int r = methodCall.argument("r");
          int g = methodCall.argument("g");
          int b = methodCall.argument("b");
          view.setBackgroundColor(Color.rgb(r, g, b));
          result.success(0);
        }else {
          result.notImplemented();
        }
    展开

    作者回复: 赞👍

    
     1
  • JW
    2020-02-03
    在flutter工程下 .android打开的java文件无法编译和提示,编写本地代码不友好,有什么办法吗?
    
    
  • mqh
    2020-01-06
    现在注册插件的话需要用FlutterPlugin,用新接口的话如何进行注册?
    
    
  • kennen
    2019-11-26
    iOS中的frame参数并没有用到,flutter是怎么把宽高传给iOS来展示的呢?

    作者回复: 你回忆一下iOS中autolayout和autorelease中父容器的布局变化对于组件布局的影响

    
    
  • Miracle_
    2019-10-23
    请问下,嵌入了原生视图后,如果嵌入的是较为复杂的视图,视图带走点击等交互事件,应该在哪边设置监听或者处理呢?

    作者回复: 看具体场景。我的建议是,如果点击交互的事件处理是能够在原生视图内搞定的,原生视图自己监听就好。否则就需要传出来让flutter处理

    
    
  • 和小胖
    2019-10-14
    思考题如下:

    //声明修改原生控件背景的方法
      changeBgColor() async {
        try {
          _methodChannel.invokeMethod("changeBgColor", {
            "color1": Random().nextInt(255),
            "color2": Random().nextInt(255),
            "color3": Random().nextInt(255)
          });
        } catch (e) {
          print(e);
        }
      }

    override fun onMethodCall(p0: MethodCall, p1: MethodChannel.Result) {
                when (p0.method) {
                    "changeBgColor" -> {
                        view.setBackgroundColor(Color.rgb(p0.argument<Int>("color1")!!, p0.argument<Int>("color2")!!, p0.argument<Int>("color3")!!))
                        p1.success(0)
                    }
                    //如果是别的方法则返回未实现
                    else -> p1.notImplemented()
                }
            }
    展开

    作者回复: 厉害👍

    
    
  • 许童童
    2019-08-29
    妙啊,通过平台视图,Flutter就可以使用原生视图了,这样,基本所有需求都可以实现了。如果社区再繁荣一点,许多组件都可以拿来即用,那开发需求的速度就是相当快了。
    
    
我们在线,来聊聊吧