Ich konnte ein Foto der Touchbar nicht anhängen. Wenn Sie jedoch die Berührungsleiste aktiviert haben und in der Kalender-App auf die Segmente [Tag, Woche, Monat, Jahr] klicken, können Sie in der Berührungsleiste den unterschiedlichen Typ der Datumsauswahl sehen. Ich muss eine selbe Datumsauswahl erstellen. Jede Hilfe wird sehr geschätzt.So erstellen Sie eine Datumsauswahl in der Touchbar (Mac OS) wie die Kalender-App
0
A
Antwort
2
Die Scrolling Monaten könnte ein einzelner NSScrubber sein.
Es gibt einige textbasierte und bildbasierte Beispiele in Apples NSTouchBar-Katalog source. Sehen Sie sich die ScrubberViewController.m-Datei in diesem Projekt an.
Nachfolgend finden Sie einen vereinfachten Code zum Einrichten eines einzelnen NSScrubber zum Anzeigen der Monate. Wahrscheinlich möchten Sie Monatsnamen richtig lokalisieren und Code hinzufügen, um die aktuelle Auswahl hervorzuheben.
static NSString *kMyScrubberID = @"com.mycompany.myapp.month.scrubber";
self.myTitlesArray = [NSArray arrayWithObjects:
@"Jan",
@"Feb",
@"Mar",
@"Apr",
@"May",
@"Jun",
@"Jul",
@"Aug",
@"Sep",
@"Oct",
@"Nov",
@"Dec",
nil];
// NSTouchBarDelegate
- (nullable NSTouchBarItem *)touchBar:(NSTouchBar *)touchBar makeItemForIdentifier:(NSTouchBarItemIdentifier)anIDstr {
if ([anIDstr isEqualToString:kMyScrubberID]) {
NSCustomTouchBarItem *theScrubberItem = [[NSCustomTouchBarItem alloc] initWithIdentifier:anIDstr];
NSScrubber *theScrubber = [[NSScrubber alloc] initWithFrame:NSMakeRect(0, 0, 300, 30)];
theScrubber.scrubberLayout = [[NSScrubberFlowLayout alloc] init];
[theScrubber registerClass:[NSScrubberTextItemView class] forItemIdentifier:anIDstr];
theScrubber.delegate = (id<NSScrubberDelegate>)self;
theScrubber.dataSource = (id<NSScrubberDataSource>)self;
theScrubber.mode = NSScrubberModeFree;
theScrubber.showsArrowButtons = NO;
theScrubber.selectionOverlayStyle = nil;
theScrubber.selectionBackgroundStyle = [NSScrubberSelectionStyle roundedBackgroundStyle];
theScrubber.backgroundColor = [NSColor colorWithRed:51.0/255.0 green:51.0/255.0 blue:51.0/255.0 alpha:1.0];
theScrubberItem.view = theScrubber;
return theScrubberItem;
} else {
return nil;
}
}
// NSScrubberDelegate
- (void)scrubber:(NSScrubber *)scrubber didSelectItemAtIndex:(NSInteger)selectedIndex {
NSLog(@"selected month = '%@'", [self.myTitlesArray objectAtIndex[selectedIndex]);
}
// NSScrubberDataSource
- (NSInteger)numberOfItemsForScrubber:(NSScrubber *)scrubber {
return [self.myTitlesArray count];
}
- (NSScrubberItemView *)scrubber:(NSScrubber *)scrubber viewForItemAtIndex:(NSInteger)index {
NSScrubberTextItemView *theItemView = [scrubber makeItemWithIdentifier:kMyScrubberID owner:nil];
if (index < [self.myTitlesArray count]) {
theItemView.textField.stringValue = [self.myTitlesArray objectAtIndex:index];
}
return theItemView;
}
// NSScrubberFlowLayoutDelegate
- (NSSize)scrubber:(NSScrubber *)scrubber layout:(NSScrubberFlowLayout *)layout sizeForItemAtIndex:(NSInteger)itemIndex {
return NSMakeSize(60, 30);
}
Verwandte Themen
- 1. So erstellen Sie .deb-Pakete unter Mac OS X
- 2. So erstellen Sie Apple Mail-Plugin für Mac OS X
- 3. So zeigen Sie die Touchbar in einem Viewcontroller
- 4. Setzen Sie die Cursorposition in Mac OS
- 5. So erstellen Sie eine Unterroutine in MUMPS auf Mac OS X
- 6. So deaktivieren Sie die vorherigen Daten in der Datumsauswahl-Dialogbox
- 7. Erstellen eines Ordners in Mac OS App
- 8. Wie kann ich eine "Quellenliste" auf Mac OS X erstellen?
- 9. Wie Sie Tastaturkürzel in Mac OS x
- 10. So bearbeiten Sie einen Kontakt mit CNContactViewController auf Mac OS
- 11. Wie kann ich die Touchbar Funktionalität in Mac durch Objective C oder Java deaktivieren
- 12. So erhalten Sie JDK 1.5 unter Mac OS X
- 13. So konfigurieren Sie den SAP Netweaver unter Mac OS?
- 14. So erkennen Sie das Rechtsklickereignis für Mac OS
- 15. So verwenden Sie Datumsauswahl in Reduxform
- 16. So erhalten Sie Webkit für Mac OS X
- 17. Mac OS App, die PHP-Skript läuft
- 18. So finden Sie Drucker Fehlerprotokoll auf Mac OS X?
- 19. Entpacken Sie die Dateien in Ordnern automatisch [mac os x]
- 20. Testen Sie IE6 unter Mac OS X
- 21. Wie auf dem Mac OS
- 22. Wie Mac OS X Wörterbuch in Eklipse
- 23. KeyboardEvent auf Mac Os
- 24. Erstellen Sie eine Dockbar im Stil von Mac OS X in Swing
- 25. RCP-Anwendungsmenüs in Mac OS
- 26. Mac OS entspricht der Windows Fibers API?
- 27. JavaFX Anwendungsname in Mac OS
- 28. Mac OS App signieren?
- 29. Den Java Classpath auf Mac OS (Mac OS X) drucken
- 30. Wie kdiff3 in Mac OS einrichten?