SJCAM SJ4000wifi買ったのでドラレコ化するために設定する

 

の続きで、SJCAM SJ4000 wifiの設定についてメモを残しとく。

 

本体の設定はわかってきたけど、さらにマウントとかのオプションも多いんだよなぁ。
いまいち使いみちの読み取れないものもあるし。
多いのも魅力だと思って買ったけど、痒いとこに手を届かすには別途部品がいるのかな。
この辺はそのうち別の記事に起こすことにして、本体の設定をしていこう。

設定

バイクのドラレコに良さげな設定を目指す。
しばらくこの設定をベースに試行錯誤していこう。

続きを読む

SJCAM SJ4000wifi買ったら設定の意味がわかりにくかった件

目的

どこで初遭遇したかは忘れたけれど、SJCAM SJ4000はアクションカムだけどドラレコとしても使えると聞いて、欲しいと思っていた。
前々からバイクにドラレコ欲しいなと思ってたけれど、高かったり、個人輸入だったりで決め切れなかったところ、これなら試しに買ってもいい値段だし、wifiついてると面白そうだったのでついに購入。

Amazonのリンク貼ったけど、実際は使いどころに迷ってた楽天ポイント使って購入。
買ったのは黒だけど、白とか黄色のポップなのも良かったかなと未だに迷う。

開封したけど

とりあえず録画できることろまではたどり着く。
でも操作がいまいち慣れなくて戸惑う。

英語マニュアル見ても、各モードにする方法とその概要くらいしかないし。

さらには設定を日本語化してもよく分からん言葉が多いぞ。
写真・動画・カメラ用語はあまり分かんないし。

ということでググりつつ手探りつつ設定するので、メモを兼ねて記事を書くことにした。

このサイトにはお世話になりました。
きっとこれからもお世話になるでしょう。

http://www.catv296.ne.jp/~myergo/sjcam_sj4000wifi.html

設定編が結構長くなりそうなので分割しました。

続きを読む

UITableViewの初期化

iOSのテーブルビューを使いたいので勉強しようとしたら、自分の環境だと詰まったのでメモ。
ここを見ながら勉強してた。
http://kurrytran.blogspot.jp/2011/10/ios-5-storyboard-and.html


動かそうとしてみると、ビルドは通るけどSIGABRTが出てアプリが落ちる…
しかもSIGABRTの原因がログに出てくれない…
(見方をわかってないだけかも)
のでブレークポイント置いて、セルに文字設定する前に落ちてるのを発見。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
//以下略

何でテンプレートのままなのに落ちるんだろうと思ったら、viewDidLoadでCellIdentifierが一致する再利用可能なセルのオブジェクトを登録しとかないといけないんだそうで。
これ文字にすると動きわかってないの丸わかりで恥ずかしいな。
このブログを参考にさせてもらいました。
http://dev.classmethod.jp/smartphone/iphone/ios6-uitableview/

ついでにテーブルビューの使い方参考にしてたページのやり方はiOS5.xのやり方で、6.0以降は再利用可能なセルの使い方が違うことにも気づけたので助かりました。


あとこの辺を使ってSIGABRTの対処とか例外処理とかちゃんと勉強しないと…
http://blog.9wick.com/2012/04/sigabrt/

少しずつでも

始めました。Head First デザインパターン

Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本

Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本

通勤時間とか昼休みにも読みたいのでAmazon.comKindle Editionを購入。
初代iPadなので重いです…

ブログ書くって思うと、本読むときにまとめる意識が向上するかなと思ってたけど、
見事に忘れてたので、内容のまとめは次回から書きます…

NSStringのnull or emptyチェック

一人でコーディングしてると、自分が書いたコードがベストなのかどうかわかんなくて不安になったので調べた。

最初はシンプルに

NSString *text;
if (text == nil && [text isEqualToString:@""]) {
    // nilのとき
}

って書いてたんだけど、JavaでいうApache StringUtilsのisBlank()的なメソッドはないもんかと探してみたら、意外な方法があるとな。

http://stackoverflow.com/questions/6177719/testing-for-nil-in-objective-c-ifx-nil-vs-ifx

Q&Aの趣旨とはちがうけど、Objective-Cのif文の条件式に、nullチェックかけたいオブジェクトを入れると、nullのときfalseを返してくれる言語仕様がある。なのでこんな書き方もできる。

if (text) {
    // nilのとき
}

(元記事は大まかに言うと

Q:この書き方と、text == nilどっちがいいの?

A:この書き方だと人によっては条件文がナニコレってなるから、text == nilのほうがいいときもあるかもね。状況によりけりかな。って感じ。)


さらにこれを発展させると、
http://stackoverflow.com/questions/899209/how-do-i-test-if-a-string-is-empty-in-objective-c

if([text length]==0){
    // nilのとき
}

こうすると、textがnullだった時点で条件文がfalseになるし、空文字のときのチェックもできて短くてハッピーだね。って方法があった。

ただし、ちょっとした見た目の動作と実際の動作に飛躍があって、nullのときのlengthは0だから0==0でtrueになんないの?って勘違い起きそうじゃない?って議論があるようで。

個人的には最後に挙げたコードで十分だし、読めると判断したのでこの方法を使おう。

ブログ開設記念。

IT業界に入って1年経ったし、日々学んだことをまとめるブログを作ります。主にJavaのことを書くことになると思います。あと個人で最近始めたiOS関連のこととか。

しばらくは自分がネットとかで集めた情報をまとめたりするのが中心になるのかなー

 

なんでブログを始たかというと、

 

・ちゃんと知識蓄積できてんの?

・アウトプットする機会少なすぎない?

・おもいっきりこの記事に触発されたから。1年遅れだけど。http://sunaot.tumblr.com/post/48053101279/4

・今までいろんなサイトの記事にお世話になったなー

・自分が調べる必要があるってことは他の人も調べることあるってことだよな。

 

この辺がいろいろモヤモヤしてきたんで、とりあえずやってみよう。ってことです。

目標は三日坊主になっても再会させて続けることで。