Button tool - style text box with border, background color, padding (auto resized when text changes)
To speed workflow it would be good to have button tool in the sidebar. In the property inspector you'd have the ability to specify the top,bottom, left and right padding. the width of button would dynamically resize as you type the button's label.
+1 The current behaviour is inconsistent with most Adobe applications.
Vlad-Florin Iepure commented
Inset Spacing like in Indesign (custom indentation for text boxes)
This would solve the issue of doubling objects. At the moment, when you create a button, you need a text box and a shape. Inset spacing would solve this and at the same time would offer more control in overall spacing.
Buttons, the most common thing that interface designers need for every app. But a simple function which most of the design tools do not have.
With Sketch and a third-party plugin I worked around and made a dynamic button, with multiple layers:
Perfect, now I only use 1 button symbol, to create all.
* the primary colors
* text + icon - left
* text + icon - right
Matthew Simmonds (VizExplorer) commented
I am considering switching to another tool like Figma or Sketch because XD doesn't have dynamic buttons. It should have been in the tool right from the start.
Great idea. Let's add this to XD. Buttons are the most common element in UI today. Let's get it right.
Greg Olson-Hyde commented
I agree with the comments below – buttons are ubiquitous in web or app design and a button with padding, background and auto resizing as text increases should be a no-brainer
I really wonder why this has not been a part of the app from the start.
Buttons might be one of the most ubiquitous component in UI Design, and yet no design tool (except production tools such as Webflow or Xcode) offers a "button" natively in the toolbox... Quite puzzling right?
Please, add this feature, every time I draw a button using a rectangle + text and have to manually resize it, it just hurts.
your link is not working
Thanks for the plugin, which is a cool workaround. :) However, the plugin doesn't work well for the buttons that are already created in the existing files.
Dynamic buttons are very much needed in XD out of the box. In most of the cases, same button style is used with longer labels and creating different instances becomes difficult to change the style globally.
Additionally, there are different types of buttons such as the ones with descriptive and qualifier icons, with or without background.
✋🤷♀️🤷♂️Read below comment before reply
update: added this feature download plugin from here
Steps to use:
- First add the button using Ctrl/Cmd + Shift + Alt + B
- change button text to your requirement
-select button text and use Ctrl/Cmd + Shift + Alt + O to resize the button automatically
Wola! feature completed
Use "Widgets for XD" Plugin
Even though it doesn't have that feature i will add that in next release
but may not be responsive but it can be possible with a shortcut in next release
I will notify you once this feature is released
follow me on Twitter so you can get instant updates
Brent B commented
This is weird to find such an old but important request not implemented. Padding is so crucial in sketch, and now framer has an excellent implementation.
+1 Something like the Sketch Plugin Paddy 2.0 does ❤️
Cristian Carlsson commented
Yes, this is soo needed.
This is the only problem I have with the repeat or control pattern..
Would be nice to be able to connect a object size with another object, Then we could set the text and rectangle to the wanted size but then "group with size" or something so they will follow each other..
Or any other solution that is solving the problem of course :)
This would be so good! It would really speed up workflow and as a UX/UI piece of software XD should really be able to do this type of function.
João Rodrigues commented
As XD is not an illustration tool, but rather focused on UX/UI designers who need to build prototypes mostly for web and mobile, it would greatly help to have some sort of smart web and mobile components.
I would expect these smart componants to be easily configured with parameters similar to CSS (like padding or border-radius) - and to behave as expected when resized (for example, increasing width of a dropdown would not change the position of text or the caret relative to the borders).
This would greatly speed up my workflow and allow me to dispense rapid wireframing tools like balsamiq.