また1からこつこつと

最高はひとつじゃないと信じてまたがんばります。

【Swift3】UITableView separator のおはなし

UITableViewのcellとcellの間にある線がある。これをseparatorという。(そのまま)
こいつに関して幾つか知見を得たのでメモ。

画面の左端まで線を到達させる

separatorはデフォルトでは画面の左端まで到達せずに切れてる。
f:id:mjk0513:20170330233851p:plain:w300
これを左端までつける方法。

tableView.separatorInset = .zero

これでOK。
f:id:mjk0513:20170330233916p:plain:w300

色も変えることができる。

tableView.separatorColor = UIColor()

f:id:mjk0513:20170330234848p:plain:w300

ここまでカスタマイズできるのはすごい。

ただ、これだとindexPath == 0、つまり1番上のcellの上に線が入らない。
こういったことを実装したい場合は、cellにUIViewを追加するしかないっぽい。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
 let cell = UITableViewCell(style: .default, reuseIdentifier: "MyCell")
 cell.textLabel?.text = items[indexPath.row]
 if indexPath.row == 0{
  let separatorView:UIView = UIView(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: 1))
  separatorView.backgroundColor = UIColor.red
  cell.addSubview(separatorView)
 }
 return cell
}

f:id:mjk0513:20170330235420p:plain:w300

これextensionつくってgithubで公開してる。
github.com

ただ、didSelectRowされたときに、deselectRowを指定してると描画が変な感じになっちゃう。
どうすればいいか考えてみます。

【Swift3】 UITableViewのHeaderをカスタマイズする方法

今開発中のアプリでUITableViewのHeaderをイジる必要があって、いろいろ調べたのでメモ。

func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
 //code
}

ではなくて、viewForHeaderInSectionを使ってUIViewをリターンしてあげる。

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
 let headerView:UIView = UIView()
 headerView.backgroundColor = UIColor.white
 return headerView
}

あとはこのViewにいろいろと追加していけば好みのものがつくれる。

headerの高さは、tableViewのメソッドで指定する。

tableView.sectionHeaderHeight = CGFloat()

仕事でコード書くと知らないことを知れるのでおもしろい。
いろいろと勉強になる。

SiriとRaspberryPiで電気をつけたり消したりする

RaspberryPi3を買ったのでなんかしたいなと思い、友人が前にやっていたRaspberry Piからの家電制御をやってみた。
こちらが完成品。
vimeo.com
Siri(HomeKit)を使って机の電気が着いたり消えたりしています。

方法

qiita.com
参考というかほとんどはここに書いてある通りです。
LEDの変わりに以下の部品とビニルコード、電源プラグ(オスーメス両方1つずつ)をはんだ付けして、ON/OFFを制御するようにしています。
akizukidenshi.com
www.monotaro.com


AppleTVが家にあるので、「家から離れた時」や、「日没後」などといったスケジュールにより制御することも可能です。
ベッドに入ってしまい起き上がるのがめんどくさいときにとても便利です。

素晴らしい。テクノロジー万歳!

上海研修備忘録その1:1日目

大学の研修旅行で上海に行ってきた。現地の小学校を見学したり、師範大学の学生と交流したりして、多くのことを学んできた。5日間行ってきたので、1日ずつ備忘録として書いていくことにする。

f:id:mjk0513:20170305185408j:plain
中国東方航空の飛行機で成田から上海浦東国際空港までフライト。MIT行ったぶりに機内食食べた。

上海領空に入ると既に視界が不明瞭。黄砂なのかPM2.5なのかわからないけど、初日は本当に空気が悪かった。
f:id:mjk0513:20170305190030j:plain
f:id:mjk0513:20170305190130j:plain
先が見えない、すごい。
f:id:mjk0513:20170305190232j:plain
f:id:mjk0513:20170305191845j:plain
f:id:mjk0513:20170305192004j:plain
よくわからないものが幾つか放置されてるのすごく好き。

その後ちょっと移動して上海の卒業生組織の方々とご飯。
同じ学校の縦のつながりは大事。いろいろ教えていただきありがとうございました!

f:id:mjk0513:20170305190357j:plain
かにチャーハン美味しかった。
f:id:mjk0513:20170305190702j:plain
AppleStoreもちゃんと行った。

f:id:mjk0513:20170305190817j:plain
100万ドルの夜景。
f:id:mjk0513:20170305190917j:plain
銀行が立ち並ぶこの地域はイギリス色が強い。
歴史感じる場所だった。

暗い中での写真を撮るのにiPhone7Plusはとても有能。キレイに撮れる。
初日はこれで終了。ホテルもいいところで素晴らしかった。
2日目から小学校見学がスタートする。
それはまた次回。

『大学の授業』を読んだ #mjkBookLog

この間読んだ本のログを残しておくの忘れていた。
www.amazon.co.jp
宇佐美寛著『大学の授業』
宇佐美先生はもともと千葉大学教育学部長をされていた方で、とても厳しい方として有名らしい。
父親から渡されて読んだ本だったが、終始面白くどちらかというと痛快であった。

この本は大学生に対してもっと本を読んで学べということをストレートに書いている。
本が書かれてから16年ほど経った現在は、大学の授業はよりひどい方向にいってるのではないかと思う。
みんな本読むべきだし、みんなもっと真面目に学ぶべき。
とくに教員目指してるような人は特にそうだろうし、なんのために大学に来ているのかをもう一度問いただすべきだ。

自分自身への示唆に富んだ素晴らしい本だった。

『Apple Pay 決済の黒船』を読んだ

先日FinTechやってる友人のオフィス遊びに行ったときにオススメしてもらった本をよんだ。
www.amazon.co.jp
その場で頼んだら次の日には届けてくれるAmazonさん有能すぎる。

2016年11月に書かれた本なので、とても新しいことばかり載ってる感じ。
総合的にはとても良い本だと思う。システムというかApplePayの仕組みを知れる感じする。
例えばVisaがなぜ非対応なのか、とか、日本というガラパゴス市場をどうやって開拓していくのか、とかも参考になる。
よく、「モバイルSuicaとかおサイフケータイが既にあるからApplePayは流行らない」って言う人いるけど、たぶんそれは表面しか見れてないんだとおもう。システムの部分みればApplePayがどれだけ可能性秘めてるか分かるはず。

自分は昨年の12月にiPhone7plusに機種変してからというもの、ApplePayで小額決済することがとても増えた。
例えば、大学内の自動販売機はすべてSuicaに対応しているので、飲み物を買うときは決まってiPhoneをかざす。
また、お店でご飯を食べるときもSuica対応のお店が多いので使うし、タクシーに乗るときもApplePayだ。
そうなるとお財布に現金を入れておく必要がなくなるので、平均して1000円札数枚と小銭が少しあるくらいになる。
お財布は軽くなって最高だし、高額紙幣はやはりセキュリティ上持ち歩きたくない。
モバイルペイメントサービスは確実に自分の生活を楽にしてくれている。

まだキャッシュなんて使ってるの?と言われる日も近いような気がする。

モバイルペイメントの別の動きとして、AmazonGoのような買い物体験を根底から覆すようなサービスも出てきそう。
www.amazon.com
AmazonGoのような形態での小売店が一般的になると、人々の「買う」体験がガラッと変わるからすごく楽しみ。
ワクワクする未来を迎えたいよね。最近楽しみでならない。