Swift part9 [無断転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 8b3c-/6Y/)
2016/10/18(火) 11:34:44.16ID:oLo879ze0関連スレ
プログラミング言語Swift 3
http://potato.2ch.net/test/read.cgi/mac/1408762479/
[SDK]iPhoneアプリ開発初心者質問箱47[touch][iPad]
http://potato.2ch.net/test/read.cgi/mac/1470902093/
Xcode part14
http://potato.2ch.net/test/read.cgi/mac/1476190499/
Swiftアンチスレ part1
http://echo.2ch.net/test/read.cgi/tech/1458491343/
前スレ
Swift part8
http://echo.2ch.net/test/read.cgi/tech/1463149806/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
0611デフォルトの名無しさん (アウアウオー Sadf-WaXM)
2017/01/24(火) 01:24:22.63ID:6XEtipUUaくんな感じ?
for ch in "a".utf8.first!..<"z".utf8.first! {
print(Character(UnicodeScalar(ch & 0x5f)))
}
もっとスマートな書き方があるかも知らん
0612デフォルトの名無しさん (ワッチョイ bf8c-GzBV)
2017/01/24(火) 01:33:52.81ID:7WmLdbGx0let str = "abcdefghijklmnopqrstuvwxyz"
for c in str.characters{
print(c)
}
がんばれ
0613デフォルトの名無しさん (アウアウオー Sadf-WaXM)
2017/01/24(火) 01:43:19.82ID:6XEtipUUaそれ文字列の中を順に表示してるだけじゃん
0614デフォルトの名無しさん (ワッチョイ bf8c-GzBV)
2017/01/24(火) 01:56:29.31ID:7WmLdbGx0これ何で大文字になんの?
0615デフォルトの名無しさん (ワッチョイ bf8c-GzBV)
2017/01/24(火) 01:57:25.69ID:7WmLdbGx0>>611の間違い
0616デフォルトの名無しさん (アウアウオー Sadf-WaXM)
2017/01/24(火) 02:07:07.07ID:6XEtipUUa0617デフォルトの名無しさん (アウアウオー Sadf-WaXM)
2017/01/24(火) 02:10:03.40ID:6XEtipUUafor val in UnicodeScalar("a").value...UnicodeScalar("z").value
{
print(String(format: "%c", val).uppercased())
}
0618デフォルトの名無しさん (スッップ Sd1f-JNK/)
2017/01/24(火) 02:22:36.10ID:kY6N+f51dクッソ読みにくいな
さすがSwift()だわ
0619デフォルトの名無しさん (ワッチョイ c33c-ddg/)
2017/01/24(火) 05:59:43.55ID:odFyaWZN0何だ?Asciiコードって。
SUICAカード
電球の球
頭痛が痛い
地震が揺れた
0620デフォルトの名無しさん (ワッチョイ 9339-u5as)
2017/01/24(火) 07:47:42.37ID:exkLo0yv0>>611
ワイの求めていたものに近い
見てたら意味的には
>>617のがよさげ
別に小文字を大文字にしたいわけじゃなくて
文字コードを数値で扱いたく
かつ数値を文字にしたかった
例えば大量のテストデータを自動生成するとか
発想が Cなので、そういうやり方しか思いつかないんだけど
手段にたどりつけないで試行錯誤してます
0621デフォルトの名無しさん (ワッチョイ 9339-u5as)
2017/01/24(火) 07:50:49.58ID:exkLo0yv0それは思いついたけどスマートじゃないと思った
例えばその "a-z" の文字列を生成したい時にどうするかというのが気になった
Cなら例えば
atoz = malloc('z' - 'a' + 2);
p = atoz;
for(c = 'a'; c <= 'z'; c++) {
*p++ = c;
}
*p = 0
ってできるじゃん
それを "abc...z" って26文字ぐらいならベタで書けるけど
これを "aa"〜"zz"までとか量が増えて行ったら
ベタでは書けないなぁとか。
てかなんで for ch in 'a'...'z' って書けないんだよ
それぐらいやらせてくれよ
0622デフォルトの名無しさん (ササクッテロリ Sp87-/mpU)
2017/01/24(火) 10:19:40.46ID:PbjuVM+3p万が一、将来AaBbC...yZzって並ぶ文字コードが世界標準になったら
'a'...'z'が書ける言語仕様にしてたらどうすればいいか分かんないじゃん
これは極端な例だけど、要はそういう不意の事象に耐える意識高い言語仕様にswiftはなってる
0623デフォルトの名無しさん (アウアウオー Sadf-WaXM)
2017/01/24(火) 10:32:22.93ID:8WMehL2Va今更文字コード変えられたら、どっちみちコンパイルし直しになるし
どんだけ既存のプログラムに影響出るんだよw
0624デフォルトの名無しさん (ワッチョイ ff4c-Taza)
2017/01/24(火) 10:52:16.06ID:bcJOEpSP00625デフォルトの名無しさん (ワッチョイ c33c-3qL8)
2017/01/24(火) 11:01:02.71ID:HBr+KooL0>文字コードを数値で扱いたく かつ数値を文字にしたかった
一応部品化すれば本処理部分は多少は見やすく・・・
func irange(_ a:UnicodeScalar, _ b:UnicodeScalar) -> CountableClosedRange<UInt32> {
return a.value...b.value
}
func nchr(_ a:UInt32) -> UnicodeScalar {
return UnicodeScalar(a) ?? "?"
}
for i in irange("a", "z") {
print(nchr(i & 0x5F))
}
0626デフォルトの名無しさん (ササクッテロリ Sp87-/mpU)
2017/01/24(火) 11:16:48.70ID:PbjuVM+3pソースファイルの話ならjavac -encodingみたいに対応すればいい
ランタイム内はそれが変動出来るようにString.utf8やUnicodeScalarがある
ソースファイルの文字コードに影響されるってC言語かよw
0627デフォルトの名無しさん (ワッチョイ 335b-wAZW)
2017/01/24(火) 12:08:53.72ID:gy8Md2CU00628デフォルトの名無しさん (アウアウオー Sadf-WaXM)
2017/01/24(火) 12:14:47.00ID:8WMehL2Vaどんな言語だって困るだろ
文字コードの大小に依存してるコードなんてごまんとあるぞ
0629デフォルトの名無しさん (ワッチョイ c33c-M+yL)
2017/01/24(火) 17:34:40.36ID:+WwPKdrl0https://kotobank.jp/word/%E3%81%A8%E3%81%8B-582055#E3.83.87.E3.82.B8.E3.82.BF.E3.83.AB.E5.A4.A7.E8.BE.9E.E6.B3.89
0630デフォルトの名無しさん (ワッチョイ 9339-u5as)
2017/01/24(火) 19:57:41.91ID:exkLo0yv0イイね
ただ大文字化したいというよりは
こういった基本的な処理を身に着けたい
今まで Cや Perlでやってたことが
swiftでもできたらなぁって感じ
できないと俺の寿命がストレスでマッハ
0631デフォルトの名無しさん (スッップ Sd1f-JNK/)
2017/01/24(火) 21:29:28.75ID:6Rgy6vgTd0632デフォルトの名無しさん (アウアウウー Sa67-WaXM)
2017/01/24(火) 21:47:34.41ID:KTC1YGyNa0633デフォルトの名無しさん (ワッチョイ a3d4-hfv1)
2017/01/24(火) 22:31:37.74ID:GRF78Bhf00634デフォルトの名無しさん (ワッチョイ cf42-3qL8)
2017/01/24(火) 22:35:46.17ID:L2GKKZjf00635デフォルトの名無しさん (ワッチョイ a3d4-hfv1)
2017/01/24(火) 22:50:13.02ID:GRF78Bhf00636デフォルトの名無しさん (ワッチョイ ffc9-NwiU)
2017/01/24(火) 23:30:23.92ID:Khh2743H0extension UnicodeScalar : Strideable {
public func advanced(by n: Int) -> UnicodeScalar {
return UnicodeScalar(self.value.advanced(by: n))!
}
public func distance(to other: UnicodeScalar) -> Int {
return other.value.distance(to: self.value)
}
}
extension UnicodeScalar : BitwiseOperations {
public static var allZeros: UnicodeScalar = UnicodeScalar(UInt32.allZeros)!
public static func &(lhs: UnicodeScalar, rhs: UnicodeScalar) -> UnicodeScalar {
return UnicodeScalar(lhs.value & rhs.value)!
}
public static func ^(lhs: UnicodeScalar, rhs: UnicodeScalar) -> UnicodeScalar {
return UnicodeScalar(lhs.value ^ rhs.value)!
}
public static func |(lhs: UnicodeScalar, rhs: UnicodeScalar) -> UnicodeScalar {
return UnicodeScalar(lhs.value | rhs.value)!
}
public static prefix func ~(rhs: UnicodeScalar) -> UnicodeScalar {
return UnicodeScalar(~rhs.value)!
}
}
for c in UnicodeScalar("a")...UnicodeScalar("z") {
print(c & UnicodeScalar(0x5f)!)
}
0637デフォルトの名無しさん (アウアウウー Sa67-WaXM)
2017/01/25(水) 08:50:03.50ID:WD3nSRWWaもうC言語でいいわ
0638デフォルトの名無しさん (エムゾネ FF1f-JNK/)
2017/01/25(水) 09:06:42.63ID:Xv7wslg5F基本読みにくいんだよなSwift
0639デフォルトの名無しさん (ワッチョイ c33c-3qL8)
2017/01/25(水) 10:23:43.05ID:2+5m68360結局リテラルがアレなんだよな
型指定しないとStringになるから俺はStrideable断念して引数使ったけど
シングルクォートのリテラルを言語仕様に入れなかった理由がよく分からない
0640デフォルトの名無しさん (ササクッテロリ Sp87-/mpU)
2017/01/25(水) 10:39:46.63ID:+ZiK5CtYp古い言語にならってASCIIを想像する人もいれば、今時ならUTF8だと想像する人もいるだろうし、フレームワークに合わせてUnicodeと言う人もいる
落とし所のない不毛な議論が目に見えるから、検討したけど削除した仕様な気がする
0641デフォルトの名無しさん (ワッチョイ c33c-3qL8)
2017/01/25(水) 11:04:36.57ID:2+5m68360既にUnicodeに盛大に引っ張られてる気もする
let c = Character("あ" + "゚")
まぁ何らかの検討はあったんだろうけど・・・
0642デフォルトの名無しさん (ワッチョイ 734c-JNK/)
2017/01/25(水) 20:41:52.96ID:RfIl6u1t00643デフォルトの名無しさん (アウアウウー Sa67-WaXM)
2017/01/25(水) 20:56:49.37ID:xQi6cekNa0644デフォルトの名無しさん (スプッッ Sd1f-CBoF)
2017/01/25(水) 21:09:38.61ID:d9MKwq+md0645デフォルトの名無しさん (ワッチョイ 1342-3qL8)
2017/01/25(水) 22:58:32.84ID:CYUx5EoW0Java
Java
Java
Java
0646デフォルトの名無しさん (ワッチョイ 1342-3qL8)
2017/01/25(水) 23:07:52.05ID:CYUx5EoW00647デフォルトの名無しさん (ワッチョイ 1342-3qL8)
2017/01/25(水) 23:12:20.50ID:CYUx5EoW0Swift字数おおくないか
ライブラリの名前がいちいち長ったらしいし
関数に引数の名前2つがデフォとかげんなりするし
try!に至ってはもう
0648デフォルトの名無しさん (ワッチョイ 0f4c-2P18)
2017/01/26(木) 01:40:32.20ID:9A8WN5h/0そ、そうね…
落ち着いて考えるとCで簡潔に書けることも長ったらしいし、それでいて読みにくい
Swiftって一体どこがいいんだろう…
0649デフォルトの名無しさん (ワッチョイ 2b10-Ve17)
2017/01/26(木) 02:37:16.34ID:dAEo4WV40obj.doSomething(true, false, true)みたいなやつ
標準APIだとそういうのは良くないってわかってるのかあんまりないけど、誰かが適当に作ったライブラリだとそんなのがよく出てくる気がする
0650デフォルトの名無しさん (スッップ Sdca-2P18)
2017/01/26(木) 03:07:53.57ID:26kSGCXVdクソ過ぎやしないか?
Objective-Cのままでいいわまじで
0651デフォルトの名無しさん (ワッチョイ 833c-AZYz)
2017/01/26(木) 07:35:18.87ID:8RDF259k0それとクロージャ構文にプレフィックスが不要なところも
代わりにスコープブロックにdoが必要だけど2文字は許容範囲内
0652デフォルトの名無しさん (ワッチョイ 7e0d-Spol)
2017/01/26(木) 08:13:25.19ID:O9H7zUJg0Stringのメンバを見るとCharacterとUnicodeScalarは同列っぽいよ
どちらもUnicodeを内部エンコードに扱ってるからそれらはUnicode依存のフレームワークの様子だけど
同じ層にUTF8, UTF16もいるからいつかCharacterUTF8, UTF8Scalarみたいな構造体もできるかもなw
0653デフォルトの名無しさん (ワッチョイ 833c-AZYz)
2017/01/26(木) 09:33:06.97ID:8RDF259k0String.initに格差があってね
この差も疑問なんだけど
let ca:[Character] = ["a", "b", "c"]
let ua:[UnicodeScalar] = ["a", "b", "c"]
let cs = String(ca)
let us = String(ua) //これが出来ない
let us = String(ua.map(Character.init)) //これは出来る
0654デフォルトの名無しさん (アウアウウー Sa7f-4cPM)
2017/01/26(木) 10:39:40.20ID:k8NBikxqavarとletの明確な使い分けも、それがない言語だと逆にモヤッとする
0655デフォルトの名無しさん (ワッチョイ 6ac9-P4zY)
2017/01/26(木) 10:57:10.28ID:KCQLgRNZ0今ちょうどSwift4でStringどうするか議論の真っ最中だから
0656デフォルトの名無しさん (ササクッテロリ Sp13-vNtw)
2017/01/26(木) 11:04:45.63ID:CKOy8ZWqp>>653もCharacterとUnicodeScalarをまとめた上位インターフェース作るだろ(適当
0657デフォルトの名無しさん (オイコラミネオ MM76-bF0B)
2017/01/26(木) 11:10:44.87ID:NOZ2YrK+M言葉で説明するのは難しいですわ
nilチェックして強制アンラップでもいいだろって思われそう
どう思う?
0658デフォルトの名無しさん (オイコラミネオ MM76-bF0B)
2017/01/26(木) 11:15:35.23ID:NOZ2YrK+MAppleのリファレンスは説得力あるわ
0659デフォルトの名無しさん (ワッチョイ 1b3c-R94c)
2017/01/26(木) 23:16:58.81ID:ufLIfALs0初心者だから全然想像できん
0660デフォルトの名無しさん (ササクッテロリ Sp13-vNtw)
2017/01/27(金) 08:27:01.41ID:Zy0rRYCMp定期乙
0661デフォルトの名無しさん (ワッチョイ 6f5b-ci5U)
2017/01/27(金) 17:31:32.73ID:MVo+YM4y0俺は重宝してるけど。
_ = someMethod()
0662デフォルトの名無しさん (ササクッテロリ Sp13-vNtw)
2017/01/29(日) 13:24:08.53ID:MpcYD/kypいつ変わったんだ、便利じゃねーか
0663デフォルトの名無しさん (ワッチョイ 833c-T3y8)
2017/01/29(日) 14:08:41.99ID:PyqVv5fH0宣言じゃなくて、定義じゃね?
0664デフォルトの名無しさん (ワッチョイ 9733-4cPM)
2017/01/29(日) 15:05:33.45ID:3Y3DXVvV00665デフォルトの名無しさん (ササクッテロラ Sp13-4cPM)
2017/01/29(日) 15:25:26.09ID:yL6xb8U5p0666デフォルトの名無しさん (ワッチョイ 833c-T3y8)
2017/01/29(日) 17:02:22.62ID:PyqVv5fH00667デフォルトの名無しさん (スッップ Sdca-2P18)
2017/01/29(日) 17:03:21.38ID:htBmfO4kd0668デフォルトの名無しさん (アウアウウー Sa7f-4cPM)
2017/01/29(日) 17:19:12.25ID:EnysbUOea0669デフォルトの名無しさん (ワッチョイ 9739-4eSF)
2017/01/30(月) 07:33:20.34ID:qYAaUQoA0引数にラベルが必須でないというのは
可読性の確保という面で
選択肢として存在するのはアリだと思うな
0670デフォルトの名無しさん (ワッチョイ 2b8c-EfrK)
2017/01/30(月) 08:01:35.96ID:Jmyw1tRr0ObjCみたいにC APIだけは別の表記するならいいけどさ
0671デフォルトの名無しさん (スップ Sdca-eBhG)
2017/01/30(月) 09:17:47.99ID:djGawl3Pd最近の次世代言語は関数型ばかりだからswiftが最後の希望や
0672デフォルトの名無しさん (ワッチョイ 833c-AZYz)
2017/01/30(月) 17:37:30.67ID:5ceKaohv0DictionaryのValueをOptionalにした場合の
削除とnil設定のオーバーロード区別
http://swiftlang.ng.bluemix.net/#/repl/588ef6a306f99d213b3a7f3a
0673デフォルトの名無しさん (ワッチョイ 833c-AZYz)
2017/01/30(月) 20:30:32.06ID:5ceKaohv0http://swiftlang.ng.bluemix.net/#/repl/588f20efcf58891f104c975c
どちらにも言えることだけど
意味的に異なるオーバーロードがあると厄介
0674デフォルトの名無しさん (ワッチョイ 9733-4cPM)
2017/01/31(火) 08:04:31.17ID:TojTxigN0仕様ころころしててイライラしてるんだけど
0675デフォルトの名無しさん (スプッッ Sd6a-eBhG)
2017/01/31(火) 09:09:51.57ID:qlhVwcaGd0676デフォルトの名無しさん (ササクッテロリ Sp13-vNtw)
2017/01/31(火) 10:07:32.51ID:Wlpmu9Pop破壊変更がないとしてもだ
なんで詳細Swiftなんて買ったと言わざるをえない
Qiitaで直近の記事を漁った方がよほど有効だろうよ
0677デフォルトの名無しさん (ワッチョイ afc9-4cPM)
2017/01/31(火) 10:44:07.96ID:IISx8Cj70keySortedメソッドの引数
by:(Key,Key)->Bool
がよく判りません。
Key型を要素とするタプルを取ってBoolを返すclosure byって意味なんだと思いますが、Key型ってなんですか?
0678デフォルトの名無しさん (アウアウウー Sa7f-4cPM)
2017/01/31(火) 10:57:03.39ID:13oBEuV5a引数を2つとってBoolを返すクロージャだろ
0679デフォルトの名無しさん (オイコラミネオ MM76-bF0B)
2017/01/31(火) 11:38:05.84ID:5xUQa1EZM0680デフォルトの名無しさん (ワッチョイ 833c-AZYz)
2017/01/31(火) 12:46:54.40ID:E6Yo5vL90ジェネリクスの型パラメータ名
http://swiftdoc.org/v3.0/type/Dictionary/
> struct Dictionary<Key : Hashable, Value>
extensionの中では元定義にある型パラメータ(Key, Value)や
Associated Types(Element, Indexなど)が使える
[Int:Int?] は Dictionary<Int,Int?> の糖衣構文
0681デフォルトの名無しさん (ワッチョイ afc9-4cPM)
2017/01/31(火) 14:26:38.67ID:IISx8Cj70納得です。
ジェネリクスの型パラメータなんですね!
それでも、こう書くとコンパイルできない。なんでだ?
func keySorted(by:(Key, Key)->Bool) -> [(Key,Value)] {a, b in
return self.sorted{by(a.key,b.key)}
0682デフォルトの名無しさん (ワッチョイ 833c-AZYz)
2017/01/31(火) 14:49:05.08ID:E6Yo5vL901つ目の{は関数本体の始まり、2つ目の{がクロージャー
func keySorted(by:(Key, Key)->Bool) -> [(Key,Value)] {
return self.sorted {a, b in
by(a.key, b.key)
}
}
0683デフォルトの名無しさん (ワッチョイ afc9-4cPM)
2017/01/31(火) 15:12:54.62ID:IISx8Cj70あんた!親切だなぁ。
0684デフォルトの名無しさん (ワッチョイ 1b3c-R94c)
2017/01/31(火) 22:05:26.16ID:Jtcmcjs90ドットインストールは全部やってしまった
0685デフォルトの名無しさん (アウアウウー Sa7f-4cPM)
2017/01/31(火) 22:25:58.19ID:cYDluZxDa英語だけど
0686デフォルトの名無しさん (ワッチョイ 7fa1-+rHU)
2017/01/31(火) 22:39:58.93ID:BjflOzhk0それより何作ったらいいかな?
0687デフォルトの名無しさん (ワッチョイ 7eba-eBhG)
2017/01/31(火) 22:59:56.23ID:rB3HMGuL00688デフォルトの名無しさん (ワッチョイ afc9-4cPM)
2017/02/01(水) 10:21:51.18ID:P9C8z9K60しばらくどころか、公式ドキュメントはズゥートお世話になります。
何言ってるか?チンプンカンプンなところもあるけど。
UITableViewの2つのメソッドの使い方がよく判らん。
dequeueReusableCell, register
0689デフォルトの名無しさん (ワッチョイ afc9-4cPM)
2017/02/01(水) 10:38:50.47ID:P9C8z9K60日本語、独学だけでiOSアプリを自在に作れる様にはなれない。
英文でしか、入手できない情報が多いから。
英語で情報取れるなら、独学でOK!
これが現実。
0690デフォルトの名無しさん (ワッチョイ aade-EfrK)
2017/02/01(水) 11:44:08.43ID:nI3xSAO90http://potato.2ch.net/test/read.cgi/mac/1470902093/
0691デフォルトの名無しさん (スプッッ Sd6a-T3y8)
2017/02/01(水) 12:10:48.46ID:rrXFdmRqdちょっと違うんじゃないないかな。
Appleは、公式に日本語資料もリリースしているけれども、最終的には英語の資料を見るように書いてある。
それに、帰結すると思う。
よって
> 英文でしか、入手できない情報が多いから。
では無くて、英文で入手しなくてはならない。
> 英語で情報取れるなら、独学でOK!
これが現実。
まーこれは、正解。
その通りだね。
0692デフォルトの名無しさん (オイコラミネオ MM76-bF0B)
2017/02/01(水) 12:12:02.48ID:smtLVi82Mそのメソッドはね、セル自体を更新する時に使うよ
チェックマークをつけたり、外したり
0693デフォルトの名無しさん (ワッチョイ 13b6-UFRj)
2017/02/03(金) 09:03:28.41ID:QkHJCDQQ0今、macでテストアプリ作ってるんですが、
アプリ内のボタンを押したらキーボードでショートカットを入力した状態(画面切り替えの' ^← 'とか)にする方法はないでしょうか?
ご教授お願いいたします
0694デフォルトの名無しさん (ワッチョイ 7fc9-vqxm)
2017/02/03(金) 10:34:26.43ID:9keII8ru00695デフォルトの名無しさん (スフッ Sd9f-4SR0)
2017/02/03(金) 12:29:41.54ID:REH9prgEd古い話にレスつけて悪いが
この場合のdelegateはiOS/macOSのライブラリの話なので
言語の教科書には出てこない
操作対象と処理を行う所を分けるしくみの概念的な名称
勉強したければiOS/macOSのプログラミングの資料を参照するとよい
protocolはSwiftの言語仕様なのでSwift言語の教科書で説明される
共通の名称で処理を受け付けることを保証するしくみ
OSのdelegateの多くはswiftではprotocolを使って実装されている
0696デフォルトの名無しさん (ワッチョイ 13c9-kDlj)
2017/02/03(金) 12:54:13.39ID:OvWQoQse0制御の逆転、っていう設計を実装する時にでてくるパターンとか、プロパティー変数だとかなんだよねぇ。
だから、言語の教科書には出てこない。Design Patternの本には出てくるかも。
教科書に出てきていても良い様な気がするけど、そんな事を上手く説明できる
著者も少ない事もあって、和文では良い説明がされているのを見た事無いなぁ。
delegateがわからんと、Framework/Libraryの違いが理解できんからね。
まあ、ここの辺りが障壁になってるから、俺みたいなおっさんでも食っていける
わけだが!
0697デフォルトの名無しさん (アウアウウー Sa07-kDlj)
2017/02/03(金) 13:07:30.01ID:QCj1HTOka設計する側になるとあれやろうけど
0698デフォルトの名無しさん (ワッチョイ 13b6-UFRj)
2017/02/03(金) 14:12:12.30ID:QkHJCDQQ0スレチみたいなので他のところ行ってきます
すみませんでした
0699デフォルトの名無しさん (ワッチョイ 7f3c-6sTg)
2017/02/03(金) 15:29:58.35ID:p7fNNQ2Y0詳解Objective-Cにはデリゲートの節があるよ
分かりにくいから役には立たないけどね
0700デフォルトの名無しさん (ワッチョイ 934e-2G09)
2017/02/03(金) 15:59:32.48ID:GQ++c1010delegaterにdelegateeの参照を持たせてコールバックしてもらう
tableViewにviewControllerの参照を持たせてcellForRowを呼んでもらう
0701デフォルトの名無しさん (ワッチョイ 934e-2G09)
2017/02/03(金) 16:02:25.45ID:GQ++c10100702デフォルトの名無しさん (ワッチョイ 7f3c-6sTg)
2017/02/03(金) 17:13:14.47ID:p7fNNQ2Y0delegateって言葉は基本的に委譲先のオブジェクトを指す言葉として使われてると思うよ
delegate == delegate object == delegatee
https://developer.apple.com/library/prerelease/content/documentation/General/Conceptual/DevPedia-CocoaCore/Delegation.html
0703デフォルトの名無しさん (スフッ Sd9f-4SR0)
2017/02/03(金) 19:50:02.27ID:REH9prgEd言語の話と、OSやライブラリの仕組みの話と、開発ツールの話が
違うってことに気付かないんだよね
でもこれに気づけないと、正しい教科書にすらたどり着けない
意外と大きな落とし穴
0704デフォルトの名無しさん (ワッチョイ 135b-C9DF)
2017/02/03(金) 20:01:45.15ID:j/Uvz34o0自分が何を知りたいのか?が判るまで、結構時間かかる人多いね。
0705デフォルトの名無しさん (アウアウウー Sa07-kDlj)
2017/02/03(金) 20:55:42.27ID:MnLqnHc9a以上。
0706デフォルトの名無しさん (スフッ Sd9f-4SR0)
2017/02/04(土) 15:18:45.31ID:EO0q2wxld自動化に主眼があるならAutomatorかAppleScript
テストに主眼があるならXCTestのUITest
あたりなんだろうけど、残念ながら詳しくは無い
0707デフォルトの名無しさん (ワッチョイ 3fb6-UFRj)
2017/02/04(土) 21:20:56.34ID:hsGpXHdO0おおお!ありがとうございます!
applescriptをswiftで呼び出したらいいのかな?
やってみます!
0708デフォルトの名無しさん (ワッチョイ 3fb6-UFRj)
2017/02/04(土) 21:54:16.56ID:hsGpXHdO0できました!
本当にありがとうございます!
0709デフォルトの名無しさん (ワッチョイ b333-tZqJ)
2017/02/04(土) 21:55:53.65ID:TiE86E8B00710デフォルトの名無しさん (ワッチョイ 7f3c-6sTg)
2017/02/04(土) 22:36:30.18ID:2gkSNY4M0//Cmd+Tabキーの例
let tab_down = CGEvent(keyboardEventSource: nil, virtualKey: 0x30, keyDown: true)
let tab_up = CGEvent(keyboardEventSource: nil, virtualKey: 0x30, keyDown: false)
tab_down?.flags = CGEventFlags.maskCommand
tab_up?.flags = CGEventFlags.maskCommand
tab_down?.post(tap: CGEventTapLocation.cghidEventTap)
tab_up?.post(tap: CGEventTapLocation.cghidEventTap)
■ このスレッドは過去ログ倉庫に格納されています