I am looking for a way to hide artwork/title/other identifying information from embedable soundcloud widget. This is for a quiz project, so the user should be able to play the recording, without seeing the author/title. Is it possible?
You could just put the widget offscreen and control the playback with the Widget API.
Related
I need all the functionalities (e.g., Searching) that a WebView provides on a WebPage but don't want to show any WebPage (provided to the initialUrl property) in the UI.
Instead, I need to show Custom Widgets inside the WebView widget upon which I can perform operations similar to Web Pages.
So, my queries are:
Is it possible to achieve this using the WebView widget?
If not, is there any Widget available similar to the WebView widget that can fulfill my requirements?
I would need some guidance.
On my page I have a video that loads at startup and I also have a switcher that allows me to change the language, but when changing this language I require that I change the video. Currently the video widget is in a separate file from the home page.
How can I take the change and bring the corresponding video?
Sorry for my bad English!
It sounds like you need to either share the state for language or pass the language variable directly down to the widget via a parameter of the widgets.
A cubit in the bloc pattern would handle this. Take a look at https://bloclibrary.dev/#/fluttercountertutorial
You'd have to make a LanguageCubit<LanguageEvent, LanguageState>. For your button's onPressed event, send a "LanguageChange" to the LanguageCubit.
You'll can then to use a BlocProvider and a BlocBuilder with the video Widget as the child. The widget will re-render when the LangaugeState is changed and, after you wire it up, you can load the correct video based on the language state.
I'm trying to find a way to check the visibility of a Flutter widget when it's either off screen or when it's obscured by another, for example Drawer, Dialog or BottomSheet.
visibility_detector helps with checking whether it's on the screen or not but does not work with the second use case (known limitation).
Is there a lower lever api that I can use to check whether a widget is actually visible to the user?
My use case: I'm adding a widget to the Overlay when something external happens (similar to Tooltip but not on long press). If the user opens for example the Drawer, the widget will appear on top. I want to detect that the child is not visible and delay or cancel the action.
Do I understand your problem?
You have a widget you want to always be on top?
You want the user to interact with that widget first before doing other things?
Use design patterns to make coding easier, your users will thank you.
You can show a Dialog on-top of other widgets with the showGeneralDialog or showDialog functions. Because Dialogs are a design-pattern used in many apps, users will already know how to use them.
Define app behavior with explicit state.
It is too hard to derive app behavior from rendered UI, not all devices are the same size and shape. This means you should try to write a variable that describes your situation and then write the code you need to make that variable's value correct. It sounds like you want a variable like bool overlayIsShowing.
Is there a way to detect if a widget is on screen/seen anywhere on the app. For example in a TabBar or a PageView.
I already know that I could use the widget's build method to detect this, but this results in some really weird behavior where sometimes the widget has already been built and when the user navigates to the screen nothing happens.
So is there any way to do this with an entire app?
Maybe you can try using widget key like a Global Key
final key = GlobalKey();
and they passes it to the widget you want to know the state
Im trying to make a Custom Progress Indicator widget which i can show or hide in any of the pages(Anywhere across the app). My approach is to bind a provider value for the progress widget and toggle the value as required. But I just don't get where exactly i should place the Progress/loader widget to make it work in whole App.
Or should i resort to using progress widget in each of the required pages and toggle it?
I'm coming from a web development background, so is there a equivalent of rootPage/ rootscreen where we can place app wide components (as in React, Ionic).