タグ

2015年12月15日のブックマーク (12件)

  • SwiftのToll-Free Bridgeの実装を読む - Qiita

    Toll-Free Bridgeとは Objective-CにはToll-Free Bridgeという仕組みがありました。 これは、C言語のライブラリであるCoreFoundationと、 Objective-CのライブラリであるFoundationの間で、 対応するクラス同士でバイナリ互換性があり、 ポインタを強制キャストすることでどちらにもなる、という不思議なものです。 下記にNSDataをCFDataとして扱うサンプルを示します。 // コンパイル: clang -framework Foundation a.m #import <Foundation/Foundation.h> int main(int argc, char * argv[]) { @autoreleasepool { NSData * data = [[NSData alloc] initWithBytes: "

    SwiftのToll-Free Bridgeの実装を読む - Qiita
  • SourceKitについての話 - Qiita

    Swift その2の14日目を担当させていただく@ushisantoasobuと申します。よろしくお願いします 概要 今日のテーマはSourceKitになります。 先月SourceKitの機能を利用できるSourceKittenというライブラリについてLTをしてきました このアドベントカレンダーでは、それを文章としてまとめあげたものにすればまあいいだろうと高を括っていましたが、Swiftのオープンソース化に伴いSourceKit自体のソースも読めるようになったので、そこらへんについてもほんのちょっと触れるようにはしたいと思います SourceKitとは あの憎っくき? Swiftが世に出はじめたころからXcodeでSwiftを書いてきた人で、このクラッシュモーダルに遭遇したことはないという人はおそらくいないと思います。 意気揚々とSwiftを書いていると、突然このようなモーダルが表示されて

    SourceKitについての話 - Qiita
  • UICollectionViewCellの編集メニューを表示する - Qiita

    やりたいこと 任意のUICollectionViewCellがロングタップされた際に任意の編集メニューを表示する。 こんな感じ↓ 環境 Xcode 7.1 iOS 9.1 上記環境以外では試していませんが、おそらくiOS6.0以降なら動作すると思います 方法 UICollectionViewCellの編集メニューを表示するには、まず次の3つのデリゲートメソッドを実装する必要があります。 collectionView:shouldShowMenuForItemAtIndexPath: collectionView:canPerformAction:forItemAtIndexPath:withSender: collectionView:performAction:forItemAtIndexPath:withSender: さらに、各々のメソッド内で編集メニュー表示に関する細かい指定を行う

    UICollectionViewCellの編集メニューを表示する - Qiita
  • mrb_state 解説(必ずしも徹底ではない) - Qiita

    mrubyを改造したり、mrubyを何かアプリケーションとかに組み込むときに必ず必要になる物に、mrb_state型の構造体へのポインタ(多くの場合はmrbという名前で参照されている)があります。これは、mrubyで使う大域変数や状態を1つの構造体にまとめた物です。 mrubyのインタプリタを使うときにはmrb_state型の構造体のインスタンスを用意してそれをインタプリタに渡します。複数のインタプリタが欲しいときには複数のインスタンスを用意します。 こうすることで、構造体のインスタンスを複数用意することで複数のmrubyインタプリターをプログラムコードは共有して使えます。これは、並列性は息を吸うのと同じくらい普通で、メモリの一滴は血の一滴くらいメモリが貴重な1組み込み界隈ではとっても嬉しい仕様なわけです。 mrb_stateはmrubyの大域変数や状態が全て入っているので、mrb_sta

    mrb_state 解説(必ずしも徹底ではない) - Qiita
  • UnityのiOSプラグインを作成するときに毎回ぐぐってることをメモ((φ(・д・。) - Qiita

    using System.Runtime.InteropServices; class Foo { [DllImport ("__Internal")] private static extern float FooPluginFunction(); }

    UnityのiOSプラグインを作成するときに毎回ぐぐってることをメモ((φ(・д・。) - Qiita
  • iOSでBluetooth通信するサンプルコード - Qiita

    概要 iPhoneBluetooth通信を動かしてみたかったので、かんたんなサンプルを書いてみました 基的に、MultipeerConnectivityで用意されている各クラスの初期化とデリゲートの実装だけ行えば、簡単にBluetooth通信ができました つくったもの(Bluetooth通信のサンプル) 画面をタップすると、自分の端末に円がアニメーション表示されます Bluetooth通信で座標を送り、相手の端末にも同じ円が表示します 長押しで円がでかくなります スプラトゥーン風にしたかったのですが、だいぶコレジャナイ BluetoothGameSample (エラー処理などいろいろ足りないです。とりあえずのサンプルになってます) 実行時の注意 端末のBluetooth設定をONにする必要があります(「設定」アプリ > Bluetooth > オン) アプリ起動すると、周囲に同じアプリ

    iOSでBluetooth通信するサンプルコード - Qiita
  • 【iOS】SFSafariViewControllerをPush / Pop のアニメーションで表示する - Qiita

    はじめに iOS Second Stage Advent Calendar15日目の記事です。 個人的には5記事目になります。 題 個人的に触ったことなかったけど興味があったSFSafariViewControllerを触ってみました。 一番最初にすげーって思ったのはiOSアプリのReederというアプリです。 これがiOS9に対応した時にSFSafariViewControllerを導入していました。 そしてそれがUINavigationControllerとうまく馴染んでいて、これをどうやるのかなーって思ったのが調べたきっかけです。 でもmodalで普通に出すと違和感が半端なかったので、なじませられるようにいろいろ考えていたらいい記事があったので、それを実装してみました。 その記事がこちらです。 push-pop-modal-sfsafariviewcontroller-hackin

    【iOS】SFSafariViewControllerをPush / Pop のアニメーションで表示する - Qiita
  • 今さら聞けない2段階認証の話いろいろ - Qiita

    2015年のmixiグループアドベントカレンダー 15日目を担当します。今さら聞けない2段階認証の話いろいろについて書いてみます(初歩的、おさらいといった感じで、あんまり突っ込んだ話はありません)。そのうち気が向いたら実装面での解説を追加するかもしれません。 2段階認証とは(ざっくりと) ここ数年、2段階認証(2要素認証、Two Factor Authencication)に対応したサービスがどんどん増えてきています。2段階認証は、IDとパスワードだけでなく、ユーザー専用のコード(数値)を入力することでセキュリティを強化するというもの。 ユーザー専用のコードは、音声電話やSMSによって提供されたり、ソフトウェアトークンによって提供されるもの(スマホアプリなど)、ハードウェアトークンによって提供されるもの(例えばYubiKeyなど)があります。 ここで紹介するソフトウェアトークンというものは

    今さら聞けない2段階認証の話いろいろ - Qiita
  • Swiftで画像をPDFに変換させる - Qiita

    この記事は学生エンジニア Advent Calendar15日目の記事です。 どこで使うんだよと言われればそれまでですが、以前インターン先で作ったので、共有しときます。 使用した環境 Xcode 7.2 Swift 2.1 iOS 9.2(実機で確認 *なぜかSimulatorは動かない) 必要なフレームワーク SystemConfiguration.framework StoreKit.framework Security.framework QuartzCore.framework MobileCoreServices.framework CoreLocation.framework CoreGraphics.framework 全体のコード import UIKit class ViewController: UIViewController,UIDocumentInteractio

    Swiftで画像をPDFに変換させる - Qiita
  • http://swift-lang.org/tryswift/

  • Swiftで作られたイケてるUIライブラリたち - Qiita

    Spring ★431 手軽にアニメションが行えるライブラリです。SrotyBoardからアニメションの設定を行えるのがいいですね。 インストール Xcodeに手動でドロップします。 サンプルコード アニメションのコードはとってもシンプルです。 26種類のアニメションパターンを設定できます。 shake pop morph squeeze wobble swing flipX flipY fall squeezeLeft squeezeRight squeezeDown squeezeUp slideLeft slideRight slideDown slideUp fadeIn fadeOut fadeInLeft fadeInRight fadeInDown fadeInUp zoomIn zoomOut flash デモ デモアプリでアニメションの動きを確認できます。 design+

    Swiftで作られたイケてるUIライブラリたち - Qiita
  • XcodeをアップデートするとXib・Storyboardを開いただけで差分が出るのをなんとかする - Qiita

    iOSに限った話ではないですが。 Interface BuilderファイルにはXcodeのバージョンが含まれているので、アップデートしたXcodeでファイルを開いただけで差分が出てしまうという問題。 プルリクエストにこうした差分だけのファイルが紛れているとレビューのノイズになるので、定期的に全IBファイルを更新・プルリクエスト みたいな事ができないかなーと調べたところ、Xcode付属のibtool(1)を使えば簡単にできました。 まず特定のIBファイル内のXcodeバージョンを最新にするには下記のようにします。 $ xcrun ibtool --upgrade ./Sources/MyView.xib --write ./Sources/MyView.xib 実際にXcode6.4で生成したxibをXcode7.1.1のibtoolで更新した結果。ちゃんとツールのバージョン番号が更新され

    XcodeをアップデートするとXib・Storyboardを開いただけで差分が出るのをなんとかする - Qiita