Rename default rendered headings like Example in Swift Markup language
Custom callouts
You can make use of a Custom Callout
/*:
# Hello, playground!
The print() function in Swift
* callout(Custom Title):
print("Hello, playground!")
*/
Rendered as (using Dusk theme)
Additional pre-defined callouts
If you don't fancy the color of the Custom Callout, there are a few other callouts (in addition to Example) available for use in a playground
/*:
# Hello, playground!
The print() function in Swift
* Example:
print("Hello, playground!")
* Experiment:
print("Hello, playground!")
* Important:
print("Hello, playground!")
* Note:
print("Hello, playground!")
*/
For additional details, see the Markup Formatting Reference - Markup Functionality.
Basic styling of Localizable.strings in iOS
The only way to display HTML is to use a UIWebView and loadHTMLString method:
UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320,200)];
[webView loadHTMLString:@"test <i>italic</i>" baseURL:nil];
[self.view addSubview:webView];
You can also use \n, but you can't change font/style of the rendered text of a UITextView.
How to change font of UIButton with Swift
Use titleLabel
instead. The font
property is deprecated in iOS 3.0. It also does not work in Objective-C. titleLabel
is label used for showing title on UIButton
.
myButton.titleLabel?.font = UIFont(name: YourfontName, size: 20)
However, while setting title text you should only use setTitle:forControlState:
. Do not use titleLabel
to set any text for title directly.
How to set a default Value of a UIPickerView
TL:DR version:
//Objective-C
[self.picker selectRow:2 inComponent:0 animated:YES];
//Swift
picker.selectRow(2, inComponent:0, animated:true)
Either you didn't set your picker to select the row (which you say you seem to have done but anyhow):
- (void)selectRow:(NSInteger)row inComponent:(NSInteger)component animated:(BOOL)animated
OR you didn't use the the following method to get the selected item from your picker
- (NSInteger)selectedRowInComponent:(NSInteger)component
This will get the selected row as Integer from your picker and do as you please with it.
This should do the trick for yah. Good luck.
Anyhow read the ref:
https://developer.apple.com/documentation/uikit/uipickerview
EDIT:
An example of manually setting and getting of a selected row in a UIPickerView:
the .h file:
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>
{
UIPickerView *picker;
NSMutableArray *source;
}
@property (nonatomic,retain) UIPickerView *picker;
@property (nonatomic,retain) NSMutableArray *source;
-(void)pressed;
@end
the .m file:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize picker;
@synthesize source;
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
- (void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
self.view.backgroundColor = [UIColor yellowColor];
self.source = [[NSMutableArray alloc] initWithObjects:@"EU", @"USA", @"ASIA", nil];
UIButton *pressme = [[UIButton alloc] initWithFrame:CGRectMake(20, 20, 280, 80)];
[pressme setTitle:@"Press me!!!" forState:UIControlStateNormal];
pressme.backgroundColor = [UIColor lightGrayColor];
[pressme addTarget:self action:@selector(pressed) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:pressme];
self.picker = [[UIPickerView alloc] initWithFrame:CGRectMake(20, 110, 280, 300)];
self.picker.delegate = self;
self.picker.dataSource = self;
[self.view addSubview:self.picker];
//This is how you manually SET(!!) a selection!
[self.picker selectRow:2 inComponent:0 animated:YES];
}
//logs the current selection of the picker manually
-(void)pressed
{
//This is how you manually GET(!!) a selection
int row = [self.picker selectedRowInComponent:0];
NSLog(@"%@", [source objectAtIndex:row]);
}
- (NSInteger)numberOfComponentsInPickerView:
(UIPickerView *)pickerView
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView
numberOfRowsInComponent:(NSInteger)component
{
return [source count];
}
- (NSString *)pickerView:(UIPickerView *)pickerView
titleForRow:(NSInteger)row
forComponent:(NSInteger)component
{
return [source objectAtIndex:row];
}
#pragma mark -
#pragma mark PickerView Delegate
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
inComponent:(NSInteger)component
{
// NSLog(@"%@", [source objectAtIndex:row]);
}
@end
EDIT for Swift solution (Source: Dan Beaulieu's answer)
Define an Outlet:
@IBOutlet weak var pickerView: UIPickerView! // for example
Then in your viewWillAppear or your viewDidLoad, for example, you can use the following:
pickerView.selectRow(rowMin, inComponent: 0, animated: true)
pickerView.selectRow(rowSec, inComponent: 1, animated: true)
If you inspect the Swift 2.0 framework you'll see .selectRow defined as:
func selectRow(row: Int, inComponent component: Int, animated: Bool)
option clicking .selectRow in Xcode displays the following:
Related Topics
How to Import Modules Without an Xcode Project in Swift
How to Check If Core Data Is Empty
Callback Url Not Approved Despite Being Provided Twitter API
Ios/Tvos Playground Fails with "Unable to Find Execution Service for Selected Run Destination"
Swiftui MACos Scroll a List with Arrow Keys While a Textfield Is Active
How to Get the Unicode Codepoint Represented by an Integer in Swift
From Any Utf-16 Offset, Find the Corresponding String.Index That Lies on a Character Boundary
Generate Avaudiopcmbuffer with Avaudiorecorder
How Does Let X Where X.Hassuffix("Pepper") Work
Swift: Hashable Struct with Dictionary Property
Workarounds for Generic Variable in Swift
Swift Enumeration Order and Comparison
How to Suppress a Specific Warning in Swift
Combining Custom Property Wrapper with @Published
Swift Pattern Matching with Enum and Optional Tuple Associated Values