I'm developing an Apple TV OS app using SwiftUI. I'm encountering an issue with the color of the tab item. I want the color of the tab item to turn green when focused; for instance, when the tab item is selected, its background color should be green. Below is my current code, but it's not working. I've tried several other approaches, but none have worked.
struct ContentView: View {
@State private var selectedTab = 0
var body: some View {
ZStack(alignment: .topLeading){
TabView(selection: $selectedTab) {
HomeView()
.tabItem {
AppColors.gradientColor1
Label("Home", image: "home-dash")
}
.tag(0)
ProductsView()
.tabItem {
Label("Products", image: "open box-search")
}
.tag(1)
SearchView()
.tabItem {
Label("Search", image: "search")
}
.tag(2)
}
.accentColor(Color.green)
.background(.black)
Image("amazontabbarlogo")
}
}
}
Create elegant and intuitive apps that integrate seamlessly with Apple platforms.
Post
Replies
Boosts
Views
Activity
Hi all,
I am working on macOS 14.4.1 and I am having an issue with the Desktop Spaces feature.
Calling
defaults read com.apple.spaces.plist
gives me a list of all current spaces, which reports the existence of a phantom Space that cannot be seen nor interacted with. The ID of that Space leads me to the following:
which shows that space 23 is associated with the Dashboard feature, that does not exist in Sonoma!
I have tried to:
restart the computer,
forcefully disable the dashboard with
defaults write com.apple.dashboard mcx-disabled -boolean YES
killall Dock
Neither attempt erased the phantom Space, which creates conflicts in my setup.
I have tried completely disabling Widgets in the Preferences, closing all apps, deleting every space (including the "current" one, by creating a new one to substitute it) and restarting the Mac. After this, the id of the dashboard space changed:
but it is still there. I do not know which step changed its id, because to my knowledge the com.apple.spaces.plist file takes a while to be updated (https://apple.stackexchange.com/questions/388449). But no hints on how to erase it.
The specific issues I am having are that this phantom space prevents any software that reads the Spaces state, to save it, from working correctly (e.g. DisplayMaid, Workspaces). In particular, I am now developing a Hammerspoon (https://www.hammerspoon.org/) module to do just that, to set it precisely to my liking: https://github.com/tplobo/restore-spaces. Listing the spaces to cycle through them always reports this phantom space, and since it cannot be identified as the "non-existing" one (up until the time it breaks one of the Lua commands that manage spaces), I am unable to exclude it somehow to continue development.
Is there a command to restart the Spaces feature, to completely erase all spaces and check if this removes this phantom Space? Otherwise, any alternative suggestions? I have already posted this in the standard forum, but no luck there.
Thank you,
Hi everyone,
This is my first app and I got rejected for a few reasons but I need help with a specific one.
Guideline 4.0 - Design
Your app offers Sign in with Apple as a login option but does not follow the design and user experience requirements for Sign in with Apple. Specifically:
- Your app requires users to provide their name after using Sign in with Apple. This information is already provided by the Authentication Services framework.
These requirements provide the consistent experience users expect when using Sign In with Apple to authenticate or log in to an account.
Next Steps
Please revise the Sign in with Apple experience in your app to address the issues we identified above.
Resources
- To learn more about App Store design requirements, see App Review Guideline 4 - Design.
- For an overview of design and formatting recommendations for Sign in with Apple, review the Human Interface Guidelines.
There is no screenshot provided so I have no idea which part of the app to improve and the app is incredibly basic. I've tested the UI with a bunch of people (it's essentially just drop-downs, bottom sheets and a few buttons)
any advice?
I upload one of my app on app store connect then I get Rejection there it gave me this message that guideline 4.8 design login services. how to solve this issue on app store Can you please guide me about it.
This the message i receive from app store:
The app uses a third-party login service, but does not appear to offer an equivalent login option with the following features:
The login option limits data collection to the user’s name and email address.
The login option allows users to keep their email address private as part of setting up their account.
The login option does not collect interactions with the app for advertising purposes without consent.
Next Steps
Revise the app to offer an equivalent login option that meets all of the above requirements.
If the app already includes a login option that meets the above requirements, reply to App Review in App Store Connect, identify which login option meets the requirements, and explain why it meets the requirements.
Additionally, it would be appropriate to update the screenshots in the app's metadata to accurately reflect the revised app once another login service has been implemented.
I'm trying to find out of SF Symbols is the correct tool for job I have in mind.
I'm wanting to create custom box drawing symbols, like those in the unicode block.
Box drawing requires the lines from one symbol to connect to the lines of an adjacent symbol. Does SF Symbols allow for this connecting of symbols, or does it create some padding restriction around each symbol, preventing lines from connecting to one another?
Your app or its metadata does not appear to include complete and final content. Specifically, your app description needs to describe in-app features and functionality.
App Store users expect the apps they download to be ready for public use. Apps on the store shouldn't include placeholder or incomplete content or information.
Next Steps
To resolve this issue, please revise your app and metadata so that all of its content is complete and final.
For example:
Your app binary or metadata should not include "lorem ipsum" text.
App metadata should not include placeholder screenshots, such as "screenshot coming soon."
Provide an engaging app description that highlights the features and functionality of your app.
I received this mail, I made required changes still getting this
Hi, I'm product designer and I'm looking for HIG for layout recomendations, currently I can't find anything about recommended numbers for spacing/paddings etc.. Did Apple remove this and why?
Hi,
Does anyone have a good reference list of all capabilities that are unavailable in an iMessage App vs a regular App? In particular, I'm trying to figure out whether I can 1) request a signature via passkey, and 2) send a POST request to an HTTP endpoint.
Asking because I haven't been able to find code references or live apps for either. Any pointers would be greatly appreciated!
Regards,
Lyron
Hello,
I want to change the name of the app, but even though I have changed it everywhere in AppStore Connect, the old name is still displayed. Where should I change it?
Thank you very much.
If you want to Download it, feel free to do it and play: https://acortar.link/zDRgyy
Is there a way to change the behaviour of the toolbar back button? I would like it to be fixed to the view and not appear before. Thanks.
NavigationLink(destination: ProfilePhotoSelectorView(), isActive: $viewModel.didAuthenticateUser, label: { }).
Using this logic Can someone help me out with what I am doing wrong?
Thanks.
Why is the registration field always pushed down a bit?
//
// LoginView.swift
// Database
//
// Created by Maxi on 25.03.24.
//
import SwiftUI
struct LoginView: View {
@State var email = ""
@State var password = ""
var body: some View {
NavigationView {
VStack {
//Header
HeaderView()
//Login Form
Form{
TextField("E-Mail Adresse", text: $email)
.textFieldStyle(DefaultTextFieldStyle())
SecureField("Passwort", text: $password)
.textFieldStyle(DefaultTextFieldStyle())
CreateAccountButton(
title: "Anmelden",
background: .blue) {
//Attempt log in
}
.padding()
}
//Create ACC
VStack {
Text ("Neu hier?")
//Show registartion
NavigationLink ("Erstelle einen Account",
destination: RegisterView())
}
.padding(.bottom, 0)
}
}
}
}
struct LoginView_Previews: PreviewProvider{
static var previews: some View {
LoginView()
}
```//
// HeaderView.swift
// Database
//
// Created by Maxi on 25.03.24.
//
import SwiftUI
struct HeaderView: View {
var body: some View {
VStack {
HStack {
Text("Anmeldung")
.font(.title)
.fontWeight(.bold)
Spacer()
HStack {
Image (systemName: "questionmark")
Image (systemName: "gear")
}
.font(.title)
}
.padding()
}```
设备已经与其他帐户-- apple developer program或apple developer enterprise program相关联
NavigationView {
VStack{
Spacer()
logo()
Spacer()
Text("电话号码")
.frame(maxWidth: .infinity, alignment: .leading)
.padding(.bottom, 10)
HStack{
CountryPicker(selectedCountry: $selectedCountry)
TextField("Phones Number", text: $phoneNumber)
.keyboardType(.numberPad)
.textFieldStyle(RoundedBorderTextFieldStyle())
}
.padding(.bottom, 14)
.frame(maxWidth: .infinity, alignment: .leading)
Text("验证码")
.frame(maxWidth: .infinity, alignment: .leading)
.padding(.bottom, 10)
TextField("Verification Code", text: $phoneNumber)
.keyboardType(.numberPad)
.textFieldStyle(RoundedBorderTextFieldStyle())
NavigationLink(destination: login()) {
Text("登陆")
.foregroundColor(.white)
.padding()
.background(Color.black)
.cornerRadius(10)
.frame(maxWidth: .infinity, alignment: .center)
.bold()
}
.buttonStyle(PlainButtonStyle())
.padding(.top,36)
Spacer()
}
.navigationTitle("")
.navigationBarItems(
trailing:
NavigationLink(destination: Text("Second View")) {
Text("遇到问题")
}
// Vstack Line
)
.padding()
.frame(maxWidth: .infinity)
// Navigation Stack
}
.padding(.vertical, 5)
Hi, I'm new to swift ui, I tried to make the
Text("登陆")
.foregroundColor(.white)
.padding()
.background(Color.black)
.cornerRadius(10)
.frame(maxWidth: .infinity, alignment: .center)
.bold()
}
this navigationLink expand the whole width of the Vstack, so I tried to use .frame(maxWidth: infinity) on it but it still doesn't work
Can any one helps me on this problem, Thank you
Hi Apple Developers,
We run a sports academy with lots of branches in different countries, and we want to make a different app for each place.
How can we make sure we launch these similar but separate apps the right way without breaking Apple's rules?
Thank you,
R Rajput
-1
I am trying to write a MacOS app which switch input methods by previously assigned shortcut(command+space in here). Switching input methods preoperly works so that the language icon at the status bar(top right) immediately changes as I put the shortcut. The problem I got in here is that the actual input method does not change. For example, if I run my app when the selected input method is Korean, then although the status bar is showing the selected input method is Japanese after command+space, what I can only type is Korean characters. However, after I change focus to another text app(e.g. from sublime text to xcode), only then the selected input method is reflected well. I am using MacOS Monterey 12.6 and Xcode 13.1.
My project contains two source files. The code in the file AppDelegate.swift is as follows:
import Cocoa
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
var switcher = Switcher()
}
And the code in the file Switcher.swift is as follows:
import Cocoa
import MASShortcut
class Switcher{
var lang: Int = 0
var kr: TISInputSource?
var jp: TISInputSource?
var en: TISInputSource?
init(){
let inputSourceNSArray = TISCreateInputSourceList(nil, false).takeRetainedValue() as NSArray
let inputSourceList = inputSourceNSArray as! [TISInputSource]
for inputSource in inputSourceList {
if inputSource.id == "com.apple.inputmethod.Korean.2SetKorean" {
self.kr = inputSource
}
if inputSource.id == "com.apple.inputmethod.Kotoeri.RomajiTyping.Japanese" {
self.jp = inputSource
}
if inputSource.id == "com.apple.keylayout.ABC" {
self.en = inputSource
}
}
self.register()
}
func switchLang(){
self.lang = (self.lang + 1) % 3
switch lang {
case 0:
TISSelectInputSource(self.kr)
case 1:
TISSelectInputSource(self.jp)
case 2:
TISSelectInputSource(self.en)
default:
print("error")
}
}
func register() {
let langShortcut = MASShortcut(keyCode: kVK_Space, modifierFlags: [.command])
MASShortcutMonitor.shared()?.register(langShortcut, withAction: {
self.switchLang()
})
}
}
I wrote these codes by referring KAWA, but KAWA does not make this issue. I have analyzed all codes of KAWA several times, I couldn't find out why the same problem does not occur in KAWA. I am quite new to Swift, and I have no idea to approach. Could you help me....? Thank you.
Greetings, I'm a new developer and would like to understand exactly how XCode, SwiftUI, Reality Kit, ARKit, Reality Composer Pro and Unity work together to create a cosmology app in 3D?
I have created a working solar system using Javascript and html and WebGL for the 3D stuff. I would now like to carry that over to the Apple Vision Pro. Can someone tell me what software frameworks, and api's in the Apple ecosystem I can use to code that?
Many thanks
After upgrading to ios17.4, webview app cannot access localstorage
In macOS, there is applicationShouldHandleReopen. Is there an equivalent in visionOS? How would I detect someone tapping on the app icon in visionOS from the Home Screen?
Scenario:
User opened my app at work and is now home. The open window of the app is spatially elsewhere so clicking on the app icon does nothing. The user can re-center all views, but that ruins the placement of all windows in all apps.
When tapping on the app icon, I'd like to be able to launch a new window that can be placed in the new space.
Does anyone know how this can be done?
I am building my 2nd React-Native app which is a very simple Notes app. The functionalities are to be able to add, edit & delete notes. And, on the home page where the user can change the orientation of the notes to be in 2 column like a grid or just a list.
My app has been getting rejected for Minimal design guideline & I don't know what to do to make it more complex.
My first iOS React-Native app was just a single-page Weather app, again that was pretty simple.
So, my question is what do I do? OR is the trick that I just keep doing little changes and try to submit & see which one gets accepted??