Fabric: Copyright 2016 Twitter, Inc. All Rights Reserved. Use of this software is subject to the terms and conditions of the Fabric Software and Services Agreement located at https://fabric.io/terms. Crashlytics Kit: Copyright 2016 Crashlytics, Inc. All Rights Reserved. Use of this software is subject to the terms and conditions of the Crashlytics Terms of Service located at http://try.crashlytics.com/terms/terms-of-service.pdf and the Crashlytics Privacy Policy located at http://try.crashlytics.com/terms/privacy-policy.pdf. OSS: http://get.fabric.io/terms/opensource.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import UIKit | |
import AuthenticationServices | |
import Combine | |
class ViewController: UIViewController { | |
// you must add a URL scheme to your Info.plist | |
let callbackURLScheme = "pocketsample" | |
let callbackURL = "pocketsample:authorizationFinished" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import UIKit | |
import Combine | |
/* | |
# References | |
- [ra1028/SwiftUI-Combine: This is an example project of SwiftUI and Combine using GitHub API.](https://github.com/ra1028/SwiftUI-Combine) | |
- [marty-suzuki/GitHubSearchWithSwiftUI: SwiftUI and Combine based GitHubSearch example.](https://github.com/marty-suzuki/GitHubSearchWithSwiftUI) | |
- [DataTaskPublisherを作ってみた](https://gist.github.com/yamoridon/16c1cc70ac46e50def4ca6695ceff772) | |
- [【iOS】Combineフレームワークまとめ(2019/6/9時点) - Qiita](https://qiita.com/shiz/items/5efac86479db77a52ccc) | |
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.example.myfirstapp | |
import android.support.v7.app.AppCompatActivity | |
import android.os.Bundle | |
import android.widget.TextView | |
class ResultActivity : AppCompatActivity() { | |
override fun onCreate(savedInstanceState: Bundle?) { | |
super.onCreate(savedInstanceState) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.example.myfirstapp | |
import android.content.Intent | |
import android.support.v7.app.AppCompatActivity | |
import android.os.Bundle | |
import android.widget.Button | |
import android.widget.EditText | |
class MainActivity : AppCompatActivity() { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Snapshotter { | |
static func createSnapshot(spreadsheetView: SpreadsheetView) -> UIImage? { | |
guard let rootView = spreadsheetView.subviews[0] as? UIScrollView, | |
let overlayView = spreadsheetView.subviews[1] as? UIScrollView else { return nil } | |
let bounds = spreadsheetView.bounds | |
let contentSize = overlayView.contentSize | |
let contentOffset = rootView.contentOffset | |
let numberOfColumns = Int(contentSize.width / bounds.width) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// References: | |
// https://developer.apple.com/videos/play/wwdc2018/711/ | |
// https://github.com/node-apn/node-apn/blob/master/doc/notification.markdown#convenience-setters | |
// https://eladnava.com/send-push-notifications-to-ios-devices-using-xcode-8-and-swift-3/ | |
var apn = require('apn'); | |
// Set up apn with the APNs Auth Key | |
var apnProvider = new apn.Provider({ | |
token: { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<title>With Declarative HTML</title> | |
<meta charset="utf-8"> | |
<!-- [1]LivePhotosKit JSのスクリプトを埋め込み --> | |
<script src="https://cdn.apple-livephotoskit.com/lpk/1/livephotoskit.js"></script> | |
</head> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Open the file | |
NSError *error = nil; | |
AVAudioFile *audioFile = [[AVAudioFile alloc] | |
initForReading: fileURL | |
commonFormat: AVAudioPCMFormatFloat32 | |
interleaved: NO | |
error: &error]; | |
// Fetch and print basic info | |
NSLog(@“File URL: %@\n”, fileURL.absoluteString); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text | |
{ | |
// すでに入力されているテキストを取得、今回編集されたテキストをマージ | |
NSMutableString *textViewText = [textView.text mutableCopy]; | |
[textViewText replaceCharactersInRange:range withString:text]; | |
// 結果が文字数をオーバーしていないならYES,オーバーしている場合はNO | |
if ([textViewText length] <= self.maxTextLength) { | |
// 最大文字数以下 | |
return YES; |
NewerOlder