Is there a way to make scrollPhysics to be the same as in ListView for Column widget? - flutter

The reason I'm asking is because I don't want to have a ListView I have a Column which fits me perfectly however the inability to scroll makes my app look irresponsive. How could I add my Column a more fluid scrollPhysics please?
I know that Column gets 100% of height of the screen and that's perfectly fine I just want to give it a responsive feel.

Warp the Column with SingleChildScrollView so that the Column will be scrollable, and you can specify the scroll scrollPhysics.

Related

Make scroll responsive to size of column in flutter

I have a screen with a column in flutter which is basically a form. At first i had trouble with the fact that the pop-up keyboard reduced the visible space and thus had an overflow. Fixed that adding the SingleChildScrollView and setting a container as a parent with an specific height (based on devicequery size).
Unfortunately, when I test the rotated screen, i get the same problem. Is there a way to set the height of the container which controls the SingleChildScrollView so that it adjusts to the total size occupied by the column widgets?
Please add Listview instead of Colum Widget.
in your scaffold
set resizeToAvoidBottomInset to false or add it
resizeToAvoidBottomInset:false

which class or widget to use a better responsive layout in the flutter?

This class or widget is useful to create a responsive layout.
AspectRatio
CustomSingleChildLayout,
CustomMultiChildLayout,
FittedBox,
FractionallySizedBox,
LayoutBuilder,
MediaQuery,
MediaQueryData,
OrientationBuilder.
Which is to use the better responsive layout.
iDecode already told you that it all depends on what you need. here take a look at official documentation, https://flutter.dev/docs/development/ui/layout.
And here is my advice
Use row when you need Horizontal layout
Use column when you need Vertical layout
Use singleChildScrollView when you need scrolling layout
Use either GridView or listView when you need repetitive view
Use Expanded, Flexible, Limitedbox, flexiblebox for adjusting the size of the widget
Mine favourite : Rows for Horizontal, Column for vertical, Scrollview for Extra data exist in the page or UI not fitted in the screen, ListView for TableView UI etc
For best fitting layout: IS Expanded, AspectRatio

Use a ListView.builder and wrap widgets dynamically

I try to solve the following problem: I want to have a dynamically generated set of cards widgets which should be layed out horizontal and wrap the line when the card is getting too big:
I was thinking of a ListView.builder but this can either go horizontal or vertical. More, a gridview seems also not the best option as I have no fixed columns or rows. Is there any way in doing so or exists there maybe a widget I am not aware of currently?

question on wrap column with SingleChildScrollView

I had problem when keyboards up, The error occured "bottom overflowed by xx pixels".
So I resolved the problem by Wrapping column with SingleChildScrollView, and I wonder how It can happen? I s there special trick with SingleChildScrollView?
It happens because the keyboard takes up padding space from screen estate. So wrapping the column with SingleChildScrollView() essentially handles that by making your screen scrollable.
Hope this helpsāœŒ
Edit:
Also the second solution given by #EdwynZN is perfectly alright.
It just has one issue, if you have textfields that are in the region where the keyboard lies, the user won't be able to see them until they lower their keyboard. And that isn't considered a good UX practice.
So using SingleChildScrollView() is the best way to go, in regards to UI/UX.
SingleChildScrollView allows to scroll an area of the space if there is not enough to show the widget (in this case the column). When the keyboard appears the amount of space of the screen is reduced and it shows the overflow because the column cannot show the whole list of children, that's why you would need a scroll area. Another solution if you don't need to scroll is to change the parameter resizeToAvoidBottomInset: false in the scaffold

Proper way, that make a screen scrollable if the content is greater than the screen - Flutter

I am looking for the proper way, how can I use scrollable view only if necessary.
I want to create a card which will have an 500 height container. In this case some small-screen device could not show the content properly specially if the keyboard is showing.
In this case the screen should be scrollable, but I cant find a good solution.
I used a SingleChildScrollView with a Column child. Inside the column there was the Card view with the content.