故事板中UIButton的自动收缩设置

时间:2016-03-08 06:01:26

标签: ios xcode xcode-storyboard

故事板中有一个UILabel设置,允许设置自动缩小配置,如下所示:

enter image description here

但我无法为UIButton的textlabel找到相同的内容。 我知道我可以通过编程方式进行设置,但很想知道是否有办法在故事板中为UIButton启用此设置。

4 个答案:

答案 0 :(得分:57)

您可以使用用户定义的运行时属性来使用故事板设置此标志。

设置以下关键路径:

//convert the credentials to a multi-byte string first
std::string MbLocalAdminUserName = MbString(localAdminUserName_.c_str());
std::string MbLocalAdminPassowrd = MbString(localAdminPassowrd_.c_str());

//convert this multi-byte format to wide char that windows is expecting
//username
int len_MbLocalAdminUserName = MultiByteToWideChar(CP_UTF8, 0, MbLocalAdminUserName.c_str() , -1, NULL, 0);
wchar_t* WcLocalAdminUserName = new wchar_t[len_MbLocalAdminUserName + 1];
MultiByteToWideChar(CP_UTF8, 0, MbLocalAdminUserName.c_str(), -1, WcLocalAdminUserName, len_MbLocalAdminUserName + 1);
//password
int len_MbLocalAdminPassowrd = MultiByteToWideChar(CP_UTF8, 0, MbLocalAdminPassowrd.c_str() , -1, NULL, 0);
wchar_t* WcLocalAdminPassowrd = new wchar_t[len_MbLocalAdminPassowrd + 1];
MultiByteToWideChar(CP_UTF8, 0, MbLocalAdminPassowrd.c_str(), -1, WcLocalAdminPassowrd, len_MbLocalAdminPassowrd + 1);

BOOL result = ::LogonUser(WcLocalAdminUserName, L".", WcLocalAdminPassowrd, 
    LOGON32_LOGON_NETWORK, LOGON32_PROVIDER_DEFAULT, &hToken);
delete[] WcLocalAdminUserName;
delete[] WcLocalAdminPassowrd;

Adjust Font Size using Storyboard

答案 1 :(得分:18)

,故事板中没有可用于设置Button的textlabel自动缩小的选项,

但您可以使用 adjustsFontSizeToFitWidth 以编程方式设置它  正如你所知道的那样。

yourbutton.titleLabel?.adjustsFontSizeToFitWidth = true;

答案 2 :(得分:5)

试试这个

btn.titleLabel.adjustsFontSizeToFitWidth = YES;
btn.titleLabel.minimumScaleFactor = 0.5; // set whatever factor you want to set 

如果您想在故事板中设置,请尝试IBDesignable和IBInspectable

参考http://nshipster.com/ibinspectable-ibdesignable/

答案 3 :(得分:2)

Swift 4解决方案

{{1}}