---
title: "init(configuration:primaryAction:)"
framework: uikit
role: symbol
role_heading: Initializer
path: "uikit/uibutton/init(configuration:primaryaction:)"
---

# init(configuration:primaryAction:)

Creates a new button with the specified configuration and registers the primary action event.

## Declaration

```swift
@MainActor @preconcurrency convenience init(configuration: UIButton.Configuration, primaryAction: UIAction? = nil)
```

## Parameters

- `configuration`: The button configuration.
- `primaryAction`: The action to perform for the doc://com.apple.uikit/documentation/UIKit/UIControl/Event/primaryActionTriggered control event.

## Discussion

Discussion If the primary action contains a title or an image, this method copies them to the configuration and the button displays them.

## See Also

### Creating buttons from a configuration object

- [UIButton.Configuration](uikit/uibutton/configuration-swift.struct.md)
