第一次接触swift编程,swift playground里面编程入门挺简单的,因为英语也不好,不知道怎么入手了
Swift Playground
RSS for tagLearn and explore coding in Swift through interactive learning experiences on the Swift Playground app for iPadOS and macOS.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hi, friends!
I have a Keynote file, in which I create design for macOS applications settings and system settings, that I use and which are installed on my Mac.
I like to record my settings so that every time I reinstall the system or an application I can open my file and set it up exactly the way I want. It's like a user manual, only it looks nice with Mac design elements. And I do it in a presentation (Keynote). I also use a Sketch for the design.
I want to turn all this into an app for myself, using Swift Playground.
Does anyone know how to, for example, add a macOS Dock icon from a Sketch to Swift Playground?
Topic:
Developer Tools & Services
SubTopic:
Swift Playground
Hello the community, how are you?
Since few days, this messages displays as an error into my code: "The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions"
Since all these days, I'm not able to solve this problem. My app is almost done and the code is good. But I don't find where the problem is from.
Here's the block where the message appears:
var body: some View { //The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
VStack {
TextField("Search invoices...", text: $searchText)
.padding(10)
.background(Color.gray.opacity(0.1))
.cornerRadius(10)
.padding(.horizontal)
HStack {
ForEach(BillFilter.allCases) { filter in
Button(action: {
selectedFilter = filter
}) {
Text(filter.rawValue)
.padding()
.background(selectedFilter == filter ? Color.accentColor : Color.gray.opacity(0.2))
.foregroundColor(selectedFilter == filter ? .white : .black)
.cornerRadius(8)
}
}
All the best,
Topic:
Developer Tools & Services
SubTopic:
Swift Playground
Certain documentation seems to suggest I can submit a swift playground to the App Store. I am a paid $99 a year developer. In the submission process they ask for my team ID. I am not part of a team. I am an individual. However, my individual account has a team ID associated with it, but they don’t allow me to enter that number in the space provided. There is an * note saying some teams are not permitted to upload to the Apple store connect.
How do I, a paid up developer, submit a swift playgrounds app to the App Store?.
Hello
I'm getting this error in my code and I don't know why. Can somebody explain this or point me at a help article.
import UIKit
var greeting = "Hello, playground"
let imageView = UIImageView()
imageView.image = UIImage(named: "image")
Utils.getImageSize(view: imageView)
class Utils {
static func getImageSize(view imageView: UIImageView) {
let image = imageView.image
print("Image size = \(image?.size ?? CGSize.zero)")
}
}
The error is as follows:
Cheers
Murray
While demonstrating Swift Playground to my students, I noticed that, unlike Xcode, it doesn’t seem possible to predefine or insert custom code snippets. In Xcode, we can easily create and reuse our own code snippets to improve teaching and development efficiency, but I couldn’t find a similar feature in Swift Playground.
Is there currently a way to predefine or insert custom code snippets in Swift Playground? Are there any recommended workarounds, or plans to support this feature in the future? Any suggestions or insights would be greatly appreciated.
Hello everyone,
I’m completely new to programming and Apple development, but I’ve always had the strong wish to learn coding and to work more deeply with Apple’s system structures. My main questions are:
How should I best start learning? For example, is Swift Playgrounds the right first step?
How should I continue afterwards to gain further knowledge, possibly in areas like system architecture, cybersecurity, or cloud computing (even though I don’t want to commit too early to one direction)?
Can you recommend a learning schedule or intensity (e.g., how often per day or week I should practice) for someone who works full-time?
Is my current MacBook Air (2020, Intel i3, 8 GB RAM, 250 GB SSD) still suitable for learning and beginner development, or would you recommend upgrading to a newer model?
On top of that, my English is not perfect yet – is it possible to improve it alongside learning coding?
I’m very motivated to finally start this journey, even though I once turned down an IBM apprenticeship when I was younger. Now I want to give it a real try.
Any advice, personal experiences, or learning resources would be very much appreciated.
Thank you in advance!
Topic:
Developer Tools & Services
SubTopic:
Swift Playground
I’m using Swift Playgrounds on macOS 26 to learn app development, starting with the “Get Started with Apps” template. Every time I run the template, macOS shows a popup asking:
“Get Started with Apps” wants to access data from other apps. Allow / Don’t Allow
I’ve already tried:
Granting Playgrounds Full Disk Access in System Settings → Privacy & Security
Checking Automation / App Permissions
Restarting Playgrounds and macOS
…but the popup still appears every run. I’m aware this is related to App Sandbox and privacy restrictions, but I’m looking for a way to:
Suppress this popup entirely while running playgrounds code, or
Run the template in a way that avoids triggering this permission request.
macOS version: 26.1
Playgrounds app version: 4.6.4
Topic:
Developer Tools & Services
SubTopic:
Swift Playground
Hello,
I’m encountering an issue where an alert dialog keeps appearing repeatedly in my swift playground project. I pressed "Allow" button but it keeps appearing again.
Does anyone can help me about it?
我在使用Swift Playground时一直弹出这个框,好烦!!!!!
可以告诉我怎么设置才能让这个弹出框不出现吗?
Topic:
Developer Tools & Services
SubTopic:
Swift Playground
Hey, meanwhile it's a great thing to program apps on the iPad and to be able to load them into the App Store Connect and the App Store.
What about localization in the meantime? When I open the folder en.lproj in sample apps from XCode, then there are two files stored in it:
Glossary.plist (XML) and
Localizable.strings (binary)
Is it correct that XCode creates binary files from the strings? Otherwise, Swift Playgrounds already offers localization in the localized learning content, but i guess the binary files can only be created in XCode?
My M2 Pro Mac mini with OSX 14.7 just updated to Swift Playgrounds 4.6.1. Now the :Learn to Code & Build Apps screen is limited in size and can't be zoomed. There is no way to scroll horizontally and I can't view the whole screen.
I have created a model folder and some swift files that are contained inside the folder. I change the file names to reflect structure or content and when I close the project and reopen it the file names revert to "New File"
I am using Swift Playgrounds on Mac. Not Xcode Playgrounds
Hello folks,
I'd like to report a bug in Swift Playground to Apple official dev team, it's in "Learn to Code 2" - "Seeking Seven Gems".
The puzzle map can't be loaded, please check the following screenshot,
My system environment:
MacOS 15.3
Swift 6.0.3 (swift-driver version: 1.115.1 Apple Swift version 6.0.3 (swiftlang-6.0.3.1.10 clang-1600.0.30.1))
Swift Playground 4.6.2
Xcode 16.2
Hardware: MacBook Pro/M2 Pro/32G
Topic:
Developer Tools & Services
SubTopic:
Swift Playground
Tags:
Developer Tools
Swift Student Challenge
Swift
I’ve encountered a bug in Swift Playgrounds within “Learn to Code 2”, specifically in the “Variables: Seeking Seven Gems” section. No matter what I do—or even if I do nothing at all—an error always occurs.
I’ve tested this on both an iPad (9th generation) and an iPad Pro 11-inch (4th generation), and the issue happens on both devices.
Has anyone else experienced this? Any ideas on how to fix or work around it?
Thanks!
In Swift Playground 4.6.2 the package PlaygroundSupport is no longer available to Playground apps. The following test previously permitted apps run in the Playground vs compiled in XCode to support different behavior:
#if canImport(PlaygroundSupport)
container = NSPersistentContainer(name: "myApp", managedObjectModel: Self.createModel())
#else
container = NSPersistentCloudKitContainer(name: "myApp")
#endif
Since Swift Playground 4.6.2 the PlaygroundSupport package is no longer available for app projects in Playgrounds.
Is there a different compile type test which can be used to differentiate compilation for Swift Playground apps ?
I am currently having to use a runtime workaround (below) but would prefer a compile time test is an alternative is available.
public static var inPlayground: Bool {
if Bundle.allBundles.contains(where: { ($0.bundleIdentifier ?? "").contains("swift-playgrounds") }) {
return true
} else {
return false
}
}
Topic:
Developer Tools & Services
SubTopic:
Swift Playground
Tags:
Developer Tools
Swift Playground
Playground Support
Hi everyone,
I’ve been developing an app using Swift Playgrounds, and it was working fine in version 4.5.
However, after updating to Swift Playground 4.6, the app no longer runs.
After some testing, I found that the issue occurs when import AppIntent is included.
Here’s a simple example:
import SwiftUI
//import AppIntents // <- If this line is included, Preview and Run fail.
@main
struct MyApp: App {
var body: some Scene {
WindowGroup {
Image(systemName: "globe")
.imageScale(.large)
.foregroundColor(.accentColor)
Text("Hello, world!")
}
}
}
Has anyone else encountered this issue?
Thanks!
Hello fellow Techies!
I am currently doing the Swift Playgrounds “Keep Going with Apps” on my iPad Pro. Everything has been going as designed until I got to the ‘Add and Delete Creatures‘ module. The lesson concludes with being able to add a creature to your list in the CreatureZoo. When you run the app from the playground, you can fill out the fields and tap ‘Add’ and that is when the app dims and after 5 seconds I get the notification that the app has an unknown crash. I have reviewed the lessons leading up to it, but I can’t find anything wrong. (Full Disclosure: I really have no clue what I am looking at some of time.)
Has anyone else ran into this?
`import SwiftUI
import Guide
struct CreatureEditor: View {
//#-learning-code-snippet(defineVariablesCreatureEditor)
//#-learning-code-snippet(environmentValue)
@State var newCreature : Creature = Creature(name: "", emoji: "")
@EnvironmentObject var data : CreatureZoo
@Environment(.dismiss) var dismiss
var body: some View {
SPCAssessableGroup(view: self) {
VStack(alignment: .leading) {
Form {
Section("Name") {
//#-learning-code-snippet(addACreatureEditorTextField)
TextField("What is your monster's name?", text: $newCreature.name)
}
Section("Emoji") {
TextField("What does your monster look like?", text: $newCreature.emoji)
}
Section("Creature Preview") {
CreatureRow(creature: newCreature)
}
}
}
.toolbar {
ToolbarItem {
Button("Add") {
data.creatures.append(newCreature)
dismiss()
}
}
}
//#-learning-code-snippet(addButtonToToolbar)
}
}
}
struct CreatureEditor_Previews: PreviewProvider {
static var previews: some View {
NavigationStack() {
CreatureEditor().environmentObject(CreatureZoo())
}
}
}’
Dare anyone try the following code in any Playground:
// Define a model that conforms to Codable
struct User: Codable {
var name: String
var age: Int
var email: String?
}
// JSON data (as a string for demonstration)
let jsonString = """
{
"name": "John Doe",
"age": 30,
"email": "john@example.com"
}
"""
// Convert the JSON string to Data
if let jsonData = jsonString.data(using: .utf8) {
do {
// Parse the JSON data into the User model
let user = try JSONDecoder().decode(User.self, from: jsonData)
print("Name: \(user.name), Age: \(user.age), Email: \(user.email ?? "N/A")")
} catch {
print("Error decoding JSON: \(error)")
}
}
I tested with Xcode 16.2 and latest 16.3, it reliably crashes the lldb server!
I clicked the “Get” button in the Swift tutorial, and it started displaying a circular progress bar. However, when the progress bar was full, it did not show that I could use this tutorial, but still display “Get”.
Device: iPad (7th)
System: iPadOS 18.3.2
App Version: 4.6.4