# Is Horizontal Scrolling Native Now?

**URL:** <https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710>\
**Category:** Questions about Thunkable X\
**Created:** [September 19, 2021, 10:09pm UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710 "2021-09-19T22:09:16Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![kareem](https://avatars.discourse-cdn.com/v4/letter/k/9de053/32.png) [@kareem](https://community.thunkable.com/u/kareem)\
**Post date:** [September 19, 2021, 10:09pm UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/1 "2021-09-19T22:09:16Z")

</div>

So I initially thought that setting a row’s scrollable to true allowed for horizontal scrolling since doing it to a column makes it vertical scrolling and I learned that I was very incorrect. I followed the [tutorial by Jimmy](https://www.youtube.com/watch?v=XYlOkaDg9Ho) and these following community discussions ([1](https://community.thunkable.com/t/how-to-make-a-horizontally-scroll-able-row/456376/20), [2](https://community.thunkable.com/t/create-horizontal-scroll-swipe-like-row/76784/9)) and the horizontal scrolling works, but it seems to work well if the placement is is centred as when trying to keep the scrollbar in a certain position (e.g in between other sections of the page) that would not make it centred, when cloning the component, it always seems to want to go back to the centre. Has anyone found a solution to this? Here is an example of what I mean:  
 ![uyhjtr](https://us1.discourse-cdn.com/flex015/uploads/thunkable/original/3X/1/8/18fcf9a5fb355bd3b7e3038b199b843ca5953150.gif)

I tried putting the row inside the column instead (opposite of the video and posts) but now the scroll area fills the screen beneath it but stays in position:  
 ![uykf](https://us1.discourse-cdn.com/flex015/uploads/thunkable/original/3X/1/3/13b9413c23c4359281c2a2221c52fcc3c891aba4.gif)

Any clues/fixes?

_ **Update:** _  
**SOLUTION**  
So for anyone who falls into the same problem, I found a solution with the help of Muneer (at least one that works for my case), it’s quite simple too and handles dynamically generated components perfectly.

1. Create a column and give it a definitive height and width

- In this example, I gave mine a width of 83% and a height of 80px
- The 83% is just so that the componenets don’t touch the screen edges in a responsive format, I prefer this sizing but you can achieve the same goals with margins/padding as well so long as its % and not px
- The 80px is so that the componenents can be seen in full without clipping, I’m sure there are other ways to achieve this, but this works well for me
- Also my screen is set to `vertical allignment = top`

1. Create a row and set horizontal and vertical fill to `fit contents`, and set `scrollable = true`

2. Add your componenets as you like to this row, but I think (can’t confirm) they need to have deinitive PX sizing

- For my case, I wanted the row to fill up with components based on the user, and for some it may be a lot so it needs to be scrollable. I just tested it with buttons (75px height and width) and I gave them margins to the right so that they do not touch each other

That’s it really, a simple 3 step process for your horizontal scrolling. The issue of the row taking up the entire screnn below it is gone, as is the issue of the row moving as more content is added. View the GIF below to see the results!  
 ![scrollino!](https://us1.discourse-cdn.com/flex015/uploads/thunkable/original/3X/8/b/8ba283f401d772dd3759d977c3b6e5c3831680d5.gif)

_NOTE:_ On previous threads discussing how to implement horizontal scrolling via a Z rotation of 1.5708 radians, I saw some mention of hiding the scroll bar or changing it’s look. Unfortunately, I don’t know if that’s possible or how to do it. If the fact that the scrollbar is right beneath the components goes against your goals, my untested suggestion would be something to with a column/row with the same colour as your background layerd over the position of the scrollbar with a different height (I would assume that is its Z index) and maybe changing the padding-margin of the components or row so that the scrollbar is further below the components. Just an idea.

---

<div class="post-metadata">

**Author:** ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)\
**Post date:** [September 20, 2021, 6:50am UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/2 "2021-09-20T06:50:20Z")

</div>

In the first GIF, I see no scrolling, just adding components.

In the second GIF, the scroll bar (indicator) will be positioned in the bottom of the container taking its computed size from the settings. Without giving details of the settings of each component, it is difficult to guess something.

**[Edit]**  
one trick to see the effect, add more components to the screen and right below your row/column that you are testing with and observe where the scroll indicator goes.

---

<div class="post-metadata">

**Author:** ![kareem](https://avatars.discourse-cdn.com/v4/letter/k/9de053/32.png) [@kareem](https://community.thunkable.com/u/kareem)\
**Post date:** [September 20, 2021, 1:08pm UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/3 "2021-09-20T13:08:23Z")

</div>

So for the first one I was testing what would happen when componenets are created by the user on the live app, my gif was just too long to upload for the scrolling part after teh componenets have been added.

I did try adding more componenets under but they went “below” the bottom of the screen, though you have made me notice that I coudl try putting them all in a column with definitive height and see what happens then.

As always, thanks for the help Muneer.

---

<div class="post-metadata">

**Author:** ![muneer](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/muneer/32/75210_2.png) [@muneer](https://community.thunkable.com/u/muneer)\
**Post date:** [September 20, 2021, 1:57pm UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/4 "2021-09-20T13:57:37Z")

</div>

Are you trying to say that you have your screen **scrollable** too? You should start with non-scrolling screen.

In the other hand, containers (rows and columns) in a screen should have a pre-defined size to be scrollable and / or scrolling. Setting any of the components as `Fit contents` or `Fill container` prevent scrolling to take effect.

---

<div class="post-metadata">

**Author:** ![kareem](https://avatars.discourse-cdn.com/v4/letter/k/9de053/32.png) [@kareem](https://community.thunkable.com/u/kareem)\
**Post date:** [September 21, 2021, 8:26am UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/5 "2021-09-21T08:26:51Z")

</div>

No my screen isn’t scrollable, I gave the scrolling row a `fit contents`, but even if the contents do not cover the entire screen, I supposed the problem could be with the Z roation somewhere.

Though I did follow up on the aforementioned hunch and removing the Z transformation, and it worked. I’ll update the original post with a tutorial in case anyone has the same problem as it fixed the all issued of the scroll row moving when contenet is generated.

Thanks again for troubleshooting with me Muneer!

---

<div class="post-metadata">

**Author:** ![domhnallohanlon](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/domhnallohanlon/32/29554_2.png) [@domhnallohanlon](https://community.thunkable.com/u/domhnallohanlon)\
**Post date:** [February 4, 2022, 4:50pm UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/6 "2022-02-04T16:50:57Z")

</div>

Hi @kareem - here’s a new example of how to add horizontal scrolling to you app!

> [@Add Horizontal Scrolling to your Projects](https://community.thunkable.com/t/add-horizontal-scrolling-to-your-projects/1716051):
>
> [horizontal\_scrolling] Add horizontally scrollable content to your app with just the flip of a switch! When using the Data Viewer Grid component, set the Horizontal scroll setting to true and you’re ready to (sc)roll! To try this out for yourself just click on the copy link below: [https://x.thunkable.com/copy/95d9208e6bbb020cc5b5622fb0fe8fb2](https://x.thunkable.com/copy/95d9208e6bbb020cc5b5622fb0fe8fb2)

---

<div class="post-metadata">

**Author:** ![tatiang](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/tatiang/32/55482_2.png) [@tatiang](https://community.thunkable.com/u/tatiang)\
**Post date:** [March 4, 2022, 6:34am UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/7 "2022-03-04T06:34:42Z")

</div>

I tried the method in the first post (“updated solution”) and on an iPhone 11, it scrolls horizontally but also vertically which defeats the purpose a bit. In a web preview, it doesn’t scroll at all.

---

<div class="post-metadata">

**Author:** ![ioannis](https://sea1.discourse-cdn.com/flex015/user_avatar/community.thunkable.com/ioannis/32/146956_2.png) [@ioannis](https://community.thunkable.com/u/ioannis)\
**Post date:** [November 8, 2024, 1:15pm UTC](https://community.thunkable.com/t/is-horizontal-scrolling-native-now/1514710/8 "2024-11-08T13:15:13Z")

</div>


