This repository has been archived by the owner on Apr 29, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 256
Is it possible to add another package of pub.dev to use it? #454
Comments
Probably not. |
Thank you for answer. My source code using Unity.UIWidgets.engine;
using Unity.UIWidgets.material;
using Unity.UIWidgets.painting;
using Unity.UIWidgets.ui;
using Unity.UIWidgets.widgets;
using UnityEngine;
using System;
using System.Collections.Generic;
public class GalleryEX : UIWidgetsPanel
{
protected override Widget createWidget()
{
return new MyGallery(
);
}
protected override void OnEnable()
{
FontManager.instance.addFont(Resources.Load<Font>("MaterialIcons-Regular"), "Material Icons");
FontManager.instance.addFont(Resources.Load<Font>("GalleryIcons"), "GalleryIcons");
FontManager.instance.addFont(Resources.Load<Font>("CupertinoIcons"), "CupertinoIcons");
FontManager.instance.addFont(Resources.Load<Font>(path: "SF-Pro-Text-Regular"), ".SF Pro Text", FontWeight.w400);
FontManager.instance.addFont(Resources.Load<Font>(path: "SF-Pro-Text-Semibold"), ".SF Pro Text", FontWeight.w600);
FontManager.instance.addFont(Resources.Load<Font>(path: "SF-Pro-Text-Bold"), ".SF Pro Text", FontWeight.w700);
base.OnEnable();
}
}
class MyGallery : StatefulWidget
{
public override State createState()
{
return new _MyGalleryState();
}
}
class _MyGalleryState : State<MyGallery>
{
Unity.UIWidgets.ui.Color pColor = Colors.blueAccent;
int _idx = 0;
List<string> menuList = new List<string> { "메인", "측정일지", "메뉴", "커뮤니티", "프리미엄" };
List<Widget> pageList = new List<Widget>
{
new ListView(
padding: EdgeInsets.all(20)
)
,
};
public override Widget build(BuildContext context)
{
TextStyle _normalSt = new TextStyle(color: Colors.grey);
Widget home = new Scaffold(
appBar: new AppBar(
backgroundColor: pColor
, title: new Text(menuList[_idx]
, style: new TextStyle(color: Colors.white)
)
, centerTitle: true
, leading: new BackButton(color: Colors.white)
, actions: new List<Widget>
{
new IconButton(icon: new Icon(icon:Icons.menu, color:Colors.white))
}
)
, body: new Column(
children: new List<Widget>{
new RaisedButton(
child: new Text("Select Date"),
onPressed: ()=>{
Debug.Log("aaa");
/*Unity.UIWidgets.material.DialogUtils.showDialog(context:context , builder: (_context)=>
{
return new AlertDialog(
actions: new List<Widget>
{
new FlatButton(child: new Text("Close"),
onPressed: ()=>{
Navigator.pop(_context);
}
)
}
);
}
);*/
/*DatePickerUtils.showDatePicker(
context:context,
initialDate:DateTime.Now,
firstDate:new DateTime(2020),
lastDate:new DateTime(2030),
selectableDayPredicate: _decideWhichDayToEnable
)*/;
Navigator.of(context);
Unity.UIWidgets.material.DialogUtils.showDialog(context:context, builder:(_context)=>{
return new AlertDialog();
}
).Then((p)=>{Debug.Log("das"); });
}
)
}
)
, bottomNavigationBar: new BottomNavigationBar(
selectedItemColor: pColor,
onTap: (index) =>
{
setState(() =>
{
_idx = index;
Debug.Log(_idx);
});
}
, currentIndex: _idx
,
items:
new List<BottomNavigationBarItem>()
{
new BottomNavigationBarItem(icon: new Icon(icon: Icons.home, color: Colors.grey) ,title: new Text("Home" , style: _normalSt), activeIcon:new Icon(icon: Icons.home, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.book, color: Colors.grey) ,title: new Text("Diary" , style: _normalSt), activeIcon:new Icon(icon: Icons.book, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.check, color: Colors.grey) ,title: new Text("Menu" , style: _normalSt), activeIcon:new Icon(icon: Icons.check, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.sms, color: Colors.grey) ,title: new Text("SNS", style: _normalSt), activeIcon:new Icon(icon: Icons.sms, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.chat, color: Colors.grey) ,title: new Text("Premium" , style: _normalSt), activeIcon:new Icon(icon: Icons.chat, color: pColor)),
}
// , type:BottomNavigationBarType.fix
)
);
return new MaterialApp(
home: home
);
}
bool _decideWhichDayToEnable(DateTime day)
{
if ((day-DateTime.Now).TotalDays>0 &&
(DateTime.Now-day).TotalDays>10)
{
return true;
}
return false;
}
public override void initState()
{
base.initState();
}
public override void dispose()
{
base.dispose();
}
} Error Message AssertionError: Error caught by gesture, thrown while handling a gesture. Object reference not set to an instance of an object
Handler: onTap
Recognizer:
Unity.UIWidgets.gestures.TapGestureRecognizer#E6C00
at Unity.UIWidgets.widgets.DialogUtils.showGeneralDialog (Unity.UIWidgets.widgets.BuildContext context, Unity.UIWidgets.widgets.RoutePageBuilder pageBuilder, System.Boolean barrierDismissible, Unity.UIWidgets.ui.Color barrierColor, System.Nullable`1[T] transitionDuration, Unity.UIWidgets.widgets.RouteTransitionsBuilder transitionBuilder) [0x00001] in D:\study\App_Practice\Assets\UIWidgets\Runtime\widgets\routes.cs:822
at Unity.UIWidgets.material.DialogUtils.showDialog (Unity.UIWidgets.widgets.BuildContext context, System.Boolean barrierDismissible, Unity.UIWidgets.widgets.WidgetBuilder builder) [0x0001b] in D:\study\App_Practice\Assets\UIWidgets\Runtime\material\dialog.cs:296
at _MyGalleryState+<>c__DisplayClass4_0.<build>b__0 () [0x0001b] in D:\study\App_Practice\Assets\Script\GalleryEX.cs:114
at Unity.UIWidgets.material._RawMaterialButtonState.<build>b__3_0 () [0x00014] in D:\study\App_Practice\Assets\UIWidgets\Runtime\material\button.cs:148
at Unity.UIWidgets.material._InkResponseState`1[T]._handleTap (Unity.UIWidgets.widgets.BuildContext context) [0x0003a] in D:\study\App_Practice\Assets\UIWidgets\Runtime\material\ink_well.cs:282
at Unity.UIWidgets.material._InkResponseState`1+<>c__DisplayClass14_0[T].<build>b__0 () [0x00000] in D:\study\App_Practice\Assets\UIWidgets\Runtime\material\ink_well.cs:346
at Unity.UIWidgets.gestures.TapGestureRecognizer.<_checkUp>b__14_1 () [0x00001] in D:\study\App_Practice\Assets\UIWidgets\Runtime\gestures\tap.cs:132
at Unity.UIWidgets.gestures.GestureRecognizer.invokeCallback[T] (System.String name, Unity.UIWidgets.gestures.RecognizerCallback`1[T] callback, System.Func`1[TResult] debugReport) [0x0001e] in D:\study\App_Practice\Assets\UIWidgets\Runtime\gestures\recognizer.cs:70
Unity.UIWidgets.widgets.DialogUtils.showGeneralDialog (Unity.UIWidgets.widgets.BuildContext context, Unity.UIWidgets.widgets.RoutePageBuilder pageBuilder, System.Boolean barrierDismissible, Unity.UIWidgets.ui.Color barrierColor, System.Nullable`1[T] transitionDuration, Unity.UIWidgets.widgets.RouteTransitionsBuilder transitionBuilder) (at Assets/UIWidgets/Runtime/widgets/routes.cs:822)
Unity.UIWidgets.material.DialogUtils.showDialog (Unity.UIWidgets.widgets.BuildContext context, System.Boolean barrierDismissible, Unity.UIWidgets.widgets.WidgetBuilder builder) (at Assets/UIWidgets/Runtime/material/dialog.cs:296)
_MyGalleryState+<>c__DisplayClass4_0.<build>b__0 () (at Assets/Script/GalleryEX.cs:114)
Unity.UIWidgets.material._RawMaterialButtonState.<build>b__3_0 () (at Assets/UIWidgets/Runtime/material/button.cs:148)
Unity.UIWidgets.material._InkResponseState`1[T]._handleTap (Unity.UIWidgets.widgets.BuildContext context) (at Assets/UIWidgets/Runtime/material/ink_well.cs:282)
Unity.UIWidgets.material._InkResponseState`1+<>c__DisplayClass14_0[T].<build>b__0 () (at Assets/UIWidgets/Runtime/material/ink_well.cs:346)
Unity.UIWidgets.gestures.TapGestureRecognizer.<_checkUp>b__14_1 () (at Assets/UIWidgets/Runtime/gestures/tap.cs:132)
Unity.UIWidgets.gestures.GestureRecognizer.invokeCallback[T] (System.String name, Unity.UIWidgets.gestures.RecognizerCallback`1[T] callback, System.Func`1[TResult] debugReport) (at Assets/UIWidgets/Runtime/gestures/recognizer.cs:70)
UnityEngine.Debug:LogException(Exception)
Unity.UIWidgets.foundation.D:logError(String, Exception) (at Assets/UIWidgets/Runtime/foundation/debug.cs:15)
Unity.UIWidgets.foundation.UIWidgetsError:dumpErrorToConsole(UIWidgetsErrorDetails, Boolean) (at Assets/UIWidgets/Runtime/foundation/assertions.cs:120)
Unity.UIWidgets.foundation.UIWidgetsError:dumpErrorToConsole(UIWidgetsErrorDetails) (at Assets/UIWidgets/Runtime/foundation/assertions.cs:105)
Unity.UIWidgets.foundation.UIWidgetsError:reportError(UIWidgetsErrorDetails) (at Assets/UIWidgets/Runtime/foundation/assertions.cs:131)
Unity.UIWidgets.gestures.GestureRecognizer:invokeCallback(String, RecognizerCallback`1, Func`1) (at Assets/UIWidgets/Runtime/gestures/recognizer.cs:73)
Unity.UIWidgets.gestures.TapGestureRecognizer:_checkUp() (at Assets/UIWidgets/Runtime/gestures/tap.cs:131)
Unity.UIWidgets.gestures.TapGestureRecognizer:handlePrimaryPointer(PointerEvent) (at Assets/UIWidgets/Runtime/gestures/tap.cs:53)
Unity.UIWidgets.gestures.PrimaryPointerGestureRecognizer:handleEvent(PointerEvent) (at Assets/UIWidgets/Runtime/gestures/recognizer.cs:262)
Unity.UIWidgets.gestures.PointerRouter:_dispatch(PointerEvent, PointerRoute) (at Assets/UIWidgets/Runtime/gestures/pointer_router.cs:47)
Unity.UIWidgets.gestures.PointerRouter:route(PointerEvent) (at Assets/UIWidgets/Runtime/gestures/pointer_router.cs:60)
Unity.UIWidgets.gestures.GestureBinding:handleEvent(PointerEvent, HitTestEntry) (at Assets/UIWidgets/Runtime/gestures/binding.cs:161)
Unity.UIWidgets.gestures.GestureBinding:dispatchEvent(PointerEvent, HitTestResult) (at Assets/UIWidgets/Runtime/gestures/binding.cs:152)
Unity.UIWidgets.gestures.GestureBinding:_handlePointerEvent(PointerEvent) (at Assets/UIWidgets/Runtime/gestures/binding.cs:106)
Unity.UIWidgets.gestures.GestureBinding:_flushPointerEventQueue() (at Assets/UIWidgets/Runtime/gestures/binding.cs:43)
Unity.UIWidgets.gestures.GestureBinding:_handlePointerDataPacket(PointerDataPacket) (at Assets/UIWidgets/Runtime/gestures/binding.cs:29)
Unity.UIWidgets.editor.<>c__DisplayClass32_0:<postPointerEvents>b__0() (at Assets/UIWidgets/Runtime/editor/editor_window.cs:250)
Unity.UIWidgets.editor.WindowAdapter:withBinding(Action) (at Assets/UIWidgets/Runtime/editor/editor_window.cs:259)
Unity.UIWidgets.editor.WindowAdapter:postPointerEvents(List`1) (at Assets/UIWidgets/Runtime/editor/editor_window.cs:250)
Unity.UIWidgets.editor.WindowAdapter:postPointerEvent(PointerData) (at Assets/UIWidgets/Runtime/editor/editor_window.cs:254)
Unity.UIWidgets.engine.UIWidgetsPanel:OnPointerUp(PointerEventData) (at Assets/UIWidgets/Runtime/engine/UIWidgetsPanel.cs:293)
UnityEngine.EventSystems.EventSystem:Update() (at C:/Program Files/Unity/Hub/Editor/2019.2.18f1/Editor/Data/Resources/PackageManager/BuiltInPackages/com.unity.ugui/Runtime/EventSystem/EventSystem.cs:377) |
I think it's because you have used material widgets in your code, so you need to wrap your app in a material app.This solution also applies to flutter. source codeusing Unity.UIWidgets.engine;
using Unity.UIWidgets.material;
using Unity.UIWidgets.painting;
using Unity.UIWidgets.ui;
using Unity.UIWidgets.widgets;
using UnityEngine;
using System;
using System.Collections.Generic;
using DialogUtils = Unity.UIWidgets.material.DialogUtils;
public class GalleryEX : UIWidgetsPanel
{
protected override Widget createWidget()
{
return new
MaterialApp(home: new MyGallery(
));
}
}
class MyGallery : StatefulWidget
{
public override State createState()
{
return new _MyGalleryState();
}
}
class _MyGalleryState : State<MyGallery>
{
Unity.UIWidgets.ui.Color pColor = Colors.blueAccent;
int _idx = 0;
List<string> menuList = new List<string> {"메인", "측정일지", "메뉴", "커뮤니티", "프리미엄"};
List<Widget> pageList = new List<Widget>
{
new ListView(
padding: EdgeInsets.all(20)
),
};
public override Widget build(BuildContext context)
{
TextStyle _normalSt = new TextStyle(color: Colors.grey);
Widget home = new Scaffold(
appBar: new AppBar(
backgroundColor: pColor
, title: new Text(menuList[_idx]
, style: new TextStyle(color: Colors.white)
)
, centerTitle: true
, leading: new BackButton(color: Colors.white)
, actions: new List<Widget>
{
new IconButton(icon: new Icon(icon: Icons.menu, color: Colors.white))
}
)
, body: new Column(
children: new List<Widget>
{
new RaisedButton(
child: new Text("Select Date"),
onPressed: () =>
{
Debug.Log("aaa");
/*Unity.UIWidgets.material.DialogUtils.showDialog(context:context , builder: (_context)=>
{
return new AlertDialog(
actions: new List<Widget>
{
new FlatButton(child: new Text("Close"),
onPressed: ()=>{
Navigator.pop(_context);
}
)
}
);
}
);*/
/*DatePickerUtils.showDatePicker(
context:context,
initialDate:DateTime.Now,
firstDate:new DateTime(2020),
lastDate:new DateTime(2030),
selectableDayPredicate: _decideWhichDayToEnable
)*/
;
Navigator.of(context);
DialogUtils.showDialog(context:
context,
builder: (
_context) =>
{
return new Scaffold(backgroundColor: Colors.transparent,
body: new Text("hello world"));
;
}
).Then((p) => { Debug.Log("das"); });
}
)
}
)
, bottomNavigationBar: new BottomNavigationBar(
selectedItemColor: pColor,
onTap: (index) =>
{
setState(() =>
{
_idx = index;
Debug.Log(_idx);
});
}
, currentIndex: _idx
,
items:
new List<BottomNavigationBarItem>()
{
new BottomNavigationBarItem(icon: new Icon(icon: Icons.home, color: Colors.grey),
title: new Text("Home", style: _normalSt),
activeIcon: new Icon(icon: Icons.home, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.book, color: Colors.grey),
title: new Text("Diary", style: _normalSt),
activeIcon: new Icon(icon: Icons.book, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.check, color: Colors.grey),
title: new Text("Menu", style: _normalSt),
activeIcon: new Icon(icon: Icons.check, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.sms, color: Colors.grey),
title: new Text("SNS", style: _normalSt), activeIcon: new Icon(icon: Icons.sms, color: pColor)),
new BottomNavigationBarItem(icon: new Icon(icon: Icons.chat, color: Colors.grey),
title: new Text("Premium", style: _normalSt),
activeIcon: new Icon(icon: Icons.chat, color: pColor)),
}
)
);
return home;
}
bool _decideWhichDayToEnable(DateTime day)
{
if ((day - DateTime.Now).TotalDays > 0 &&
(DateTime.Now - day).TotalDays > 10)
{
return true;
}
return false;
}
public override void initState()
{
base.initState();
}
public override void dispose()
{
base.dispose();
}
} |
Now it works. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
I'm curious how to do it if possible.
Thank you
The text was updated successfully, but these errors were encountered: