使用swift3在单击ios时更改按钮上的文本

时间:2017-08-22 06:20:01

标签: ios swift3 xcode8

情景:

我有VC我已经水平放置了 4 UIButton 4 UIImageView ,每个按钮每次都有自己独立的视图控制器按下它们会显示相应的VC

问题:

  • 问题是我必须更改单击按钮时使用的文字颜色和图像颜色。

  • 我可以使用图片也是文字的单个按钮吗?

  • 如何在点击时更改按钮的字体。

图片:

These are the 4 buttons i made them like i place image view and a button

5 个答案:

答案 0 :(得分:2)

  1. 您可以继承UIButton来创建自己的按钮。最终,按钮继承自UIView,因此,您可以简单地子类化并添加要添加到按钮的任何样式。对UIButton进行子类化将为您提供绝对的设计自由。您还可以使用API​​函数来设置按钮的图像/文本,如下所示

    button.setImage(UIImage(named: "<image placeholder>") for: .normal)

    请注意,.normal是按钮的状态,对normal状态的任何更改都会应用于按钮的所有其他状态。如果您希望对特定州进行更改,请提及。

  2. 我们将选择器附加到按钮的触摸事件。当发生事件(如touchupinside aka click)时,将调用选择器。在此选择器中,您可以编写按钮新字体的代码。您可以将字体设置如下

    myButton.titleLabel!.font = UIFont(name: YourfontName, size: 20)

答案 1 :(得分:1)

您可以在UIButton中同时使用文本和图片,如下所示

button.setImage(UIImage(named: "imageName") for: .normal)
button.setTitle("Title", for: .normal)

使用UIButton的contentHorizo​​ntalAlignment将按钮标题设置为图像的左侧或右侧。

使用UIButton的imageEdgeInsets和contentEdgeInsets设置边距

使用UIButton的IBAction更改按钮上的图像,标题和字体

使用UIButton的.highlighted状态在UIButton的突出显示状态下设置图像和标题

答案 2 :(得分:0)

当然,您可以使用按钮,因为我们可以为按钮设置图像和文本。

<div class="header">	

      <div class="image">
      Image
      </div>
  
      <nav class="navigation"> 
      
        <ul>
        
          <li class="button_01"> 1.0 Main Menu 
            <ul class="SlideItem_01">
              <li> 1.1 Sub Menu </li>
              <li> 1.2 Sub Menu </li>
              <li class="button_02"> 1.3 Sub Menu     
                 <ul class="SlideItem_02">
                  <li> 1.3.1 Sub Menu </li>
                  <li> 1.3.2 Sub Menu </li>
                  <li> 1.3.3 Sub Menu </li>
                 </ul>
              </li> 
            </ul>
          </li>
          
          <li class="button_01"> 2.0 Main Menu 
            <ul class="SlideItem_01">
              <li> 2.1 Sub Menu </li>
              <li class="button_02"> 2.2 Sub Menu     
                 <ul class="SlideItem_02">
                  <li> 2.2.1 Sub Menu </li>
                  <li> 2.2.2 Sub Menu </li>
                  <li> 2.2.3 Sub Menu </li>
                 </ul>
              </li> 
            </ul>
          </li>

          <li> 3.0 Main Menu </li>
          
        </ul>
        
      </nav>
      
</div>	

按钮文字字体:

button.setImage(UIImage(named: "imageName") for: .normal)
button.setTitle("the title string", for: .normal)

突出显示状态颜色:

button.titleLabel?.font = UIFont(name: "font string you want", size: 18)

使用Objective-C,您可以在按钮中交换图像和文本位置:

button.setTitleColor(UIColor.red, for: .highlighted)

答案 3 :(得分:0)

你可以设置 button.setImage(image: UIImage(named: "abc"), for: .normal) button.setTitle(image: "abc", for: .normal)

您更改状态操作按钮“.normal”是其他状态。

答案 4 :(得分:0)

所以这里的人是最好的解决方案:

Q1)问题是我必须改变文字颜色和图像颜色      我用过点击按钮。 A)a。将按钮拖放到VC    湾在ATTRIBUTES INSPECTOR默认状态是默认选择      你想要的颜色我选择灰色,现在点击侧面的箭头      默认并选择SELECTED状态并选择颜色和图像       在图像中放了image.png。    C。转到SIZE INSPECTOR并调整图像和文本的大小       按钮 。     d。转到你尊敬的swift文件并创建每个按钮iboutlet和        ibaction,在每个按钮的动作中使用以下行:

   button1.isselected = true
   button2.isselected = false

它对我有用。

Q2)我可以使用图片也是文字的单个按钮吗?

A)以上是步骤

Q3)如何在点击时更改按钮的字体。 A)仍在工作