diff --git a/example/android/app/src/main/java/com/finogeeks/mop_example/MainApplication.java b/example/android/app/src/main/java/com/finogeeks/mop_example/MainApplication.java index 254851f..a481089 100644 --- a/example/android/app/src/main/java/com/finogeeks/mop_example/MainApplication.java +++ b/example/android/app/src/main/java/com/finogeeks/mop_example/MainApplication.java @@ -1,6 +1,8 @@ package com.finogeeks.mop_example; +import android.app.AlertDialog; import android.app.Application; +import android.app.Dialog; import android.content.Context; // import android.support.annotation.NonNull; import androidx.annotation.NonNull; @@ -27,11 +29,16 @@ public class MainApplication extends Application { FinAppProcessClient.INSTANCE.getAppletProcessApiManager().setAppletProcessHandler(new IAppletProcessHandler(){ @Override public boolean onNavigationBarMoreButtonClicked(@NonNull Context context, @NonNull String appId) { - // 返回true表示要自行处理更多视图;返回false表示使用默认的更多视图 - // 在这里弹出自定义的更多视图 - - return false; + new AlertDialog.Builder(context) + .setTitle("更多视图") + .setMessage(appId) + .setPositiveButton("菜单", null) + .setNegativeButton("取消", null) + .show(); + + // 返回true表示要自行处理更多视图;返回false表示使用默认的更多视图 + return true; } }); } diff --git a/example/lib/main.dart b/example/lib/main.dart index a9e85a1..32604b4 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -3,6 +3,7 @@ import 'dart:ffi'; import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:mop/api.dart'; import 'dart:async'; import 'dart:io'; @@ -10,6 +11,8 @@ import 'package:mop/mop.dart'; void main() => runApp(MyApp()); +const toAppMessageChannel = MethodChannel("com.message.flutter_to_app"); + class MyApp extends StatefulWidget { @override _MyAppState createState() => _MyAppState(); @@ -176,7 +179,9 @@ class MyAppletHandler extends AppletHandler { @override bool customCapsuleMoreButtonClick(String appId) { - return false; + print("customCapsuleMoreButtonClick---"); + toAppMessageChannel.invokeMethod("showCustomMoreView", {"appId": appId}); + return true; } @override