2015/04/20

[iOS][Objective-C]JSQMessagesViewControllerのballonのメッセージを設定

JSQMessagesViewControllerのballonのメッセージを設定するにはどうすればいいのだろうか?

- (id<JSQMessageData>)collectionView:(JSQMessagesCollectionView *)collectionView messageDataForItemAtIndexPath:(NSIndexPath *)indexPath{
    JSQMessage *jSQMessage;
    NSString *senderId;
    NSString *senderDisplayName;
    NSString *txt;
    jSQMessage = [[JSQMessage alloc] initWithSenderId:senderId
                                    senderDisplayName:senderDisplayName
                                                 date:[[NSDate alloc] init]
                                                 text:txt
    ];
    return jSQMessage;
}
これで表示することができる。

2015/04/19

[iOS][Objective-C]JSQMessagesViewControllerのballonの個数の設定

JSQMessagesViewControllerのballonの個数を設定するにはどうすればいいのだろうか?

-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
    NSInteger recordCounts;
    return recordCounts;
}
これでバルーンの個数を設定することができた。

2015/04/18

[iOS][Objective-C]JSQMessagesViewControllerのballonの色を設定

JSQMessagesViewControllerのballonの色を設定するにはどうすればいいのだろうか?

- (id<JSQMessageBubbleImageDataSource>)collectionView:(JSQMessagesCollectionView *)collectionView messageBubbleImageDataForItemAtIndexPath:(NSIndexPath *)indexPath{

    JSQMessageBubbleImageFactory *bubbleImageFactory = [[JSQMessageBubbleImageFactory alloc] init];
    JSQMessage *jSQMessage = [messages objectAtIndex:indexPath.item];
    if([jSQMessage.senderId isEqualToString:self.senderId]){
        return [bubbleImageFactory outgoingMessagesBubbleImageWithColor:[UIColor jsq_messageBubbleLightGrayColor]];
    }else{
        return [bubbleImageFactory incomingMessagesBubbleImageWithColor:[UIColor jsq_messageBubbleLightGreenColor]];
    }
}
確かにバルーンの色が変更できた。

2015/04/17

[iOS][Objective-C]JSQMessagesViewControllerのキーボードを非表示にする

テキストボックスの右側にある「send」ボタンをタップしたときに、表示されているキーボードを非表示にしたい場合はどうすればいいのだろうか?

[self.inputToolbar.contentView.textView resignFirstResponder];
これを叩いたら消えた。

2015/04/16

[本]リブセンス 生きる意味

読了

リブセンス〈生きる意味〉
上阪徹
日経BP社
売り上げランキング: 99,310

はじめに 25歳の最年少上場社長から学べること
第1章 人を幸せにするビジネスモデル
「これで儲かるんですか?」 といわれるアルバイト情報サイト
広告を出せば費用がかかるという常識を覆す
若者の間で支持を集めた「採用祝い金」
100社以上の競合に真似されても負けない理由

第2章 起業を決意した高校時代
上場してもブレない25歳の社長の秘密
「生きる意味」を 自らに問いかけた高校生
テニス部で1年間球拾い。理不尽な先輩の命令に耐える
放任主義の教育がビジネスへの興味を育てた
本に答えを求めず、自分の頭で考え続けた
「起業なんて無理だ」 といわれなかった
簿記とシスアドの資格を高校2年生で取得
文化祭実行委員として100人ものスタッフを動かす
アルバイト探しで自分が感じた 不便さ をヒントにする
別の高校のプログラマーをスカウトする
起業するために政治経済学部への進学を選ぶ

第3章 ベンチャーキャピタルはすべて断る
大学入学時には事業計画書を作っていた
ビジネスが中心の大学生活を送れるよう準備をする
コンテストに優勝するために最前列で講義を聴いてアピール
プレゼンテーションではやる気とフレッシュさをアピール
営業のノウハウをバイトで身に付ける
段取りの良さを発揮し、綿密なスケジュールを作る
何もいわずに創業資金を貸した両親
ベンチャーキャピタルの申し出は断る
過労死するほど働くのが当たり前だと思っていた
起業するためにビジネスモデルを変更する
大企業を中心に攻め、手ごたえを感じた営業活動
苦渋の決断でサイトのリリースを遅らせる

第4章 器用じゃないから乗り越えられた
自前でコツコツSEOを頑張る
お客さんにより喜んでもらうためにビジネスモデルを再度変更
画期的な祝い金のシステムで多様なニーズを満たす
追い詰められ、事業の売却を検討する
ついにブレイク! 初年度の20倍の売り上げを達成
器用じゃなかったから乗り越えることができた
売り上げが伸びても自分たちはまだまだと思う
今でも後悔する、お世話になった人を裏切る失態
正義を押し通すことが必ずしもいいとは限らない

第5章 上場は当然の通過点
初めて採用した社員はずっと年上の43歳
大きな会社を目指すなら上場は当然のこと
思い切った引越しでみんなの意識が変わる
アルバイトでも評価する。役員を超える報酬でもいい
ケチケチ経営の原点は自分の金銭感覚
競合が現れてもあわてず求人数1位を達成
苦しい新規プロジェクトがリーダーを育てた
不動産の分野でも自分の感じた不便を解消する
新規事業のヒントは 既存のモデルの組み合わせ

第6章 最年少上場社長はどう育ったか
ごく普通の家庭でごく普通に育てられる
身近にいた2人の祖父の影響でビジネスに興味を持つ
小さいころから大人と接し、物怖じしない若者になった
母親から教わったビジネスセンス
「やれ」といわれてもやりたくないことはやらない
負けず嫌いだが、負けを認めるときは認める
「個性」と「常識」のバランスを間違えない

第7章 人を幸せにするのは自分のため
最年少で華々しく上場しても冷静でいられる理由
流行に流されない賢い20代の登場
自分がやりたいことは過去を振り返れば見つかる
寄付は自分のためにする。人を幸せにするのも自分のため
人の幸せのためだから人は頑張れる
サッカー選手の著書に共感。「普通の人」の勝ち方を追求する
何が 正しい のか世に問うために戦う

via:目次
普通の大学生が企業して上場したとしきりに書いてあるが、全然、普通じゃないと思った。

まず、人材派遣会社は、他と比べて利益率がいいし(結果的にそうなったのかもしれないが)、他の中古車サイトや住宅サイトも利益率がいいのを選んでいるような気がしてならない。

ひょっとしたら、どの業界を選択すれば、利益がいいのか調査しているのかもしれない。
(当然、そのことは本書には書いてないが。)

当初のビジネスモデルを変更して今に行き着いたのは知らなかった。
最初から採用祝い金とかあるかと思った。

何気に恐ろしいなーっと思った。

2015/04/15

[iOS][Objective-C]JSQMessagesViewControllerのデータリセット

JSQMessagesViewControllerでデータのreloadを行いたい場合はどうすればいいのだろうか?

[self.collectionView reload];
という形で、collectionViewに対してreloadメソッドをコールすればリロードすることができる。

この辺は、UITableViewと同じですね。

2015/04/14

[iOS][Objective-C]JSQMessagesViewControllerのセットアップ

今、JSQMessagesViewControllerの使い方を勉強しているのだが、テキストボックスの左側に表示される添付ファイルボタンを撤去したい。

その場合は、どうすればいいのか?

- (void)viewDidLoad{
    [super viewDidLoad];
    self.inputToolbar.contentView.leftBarButtonItem = nil;
}
という形で、leftBarButtonItemにnilを設定すればいいみたい。

確かに削除することができた。

2015/04/13

[android][html]横スクロールができない件

どうやらandroid 2.X系では横スクロールできないみたい。

で、どうするかというと、jquery-mobile-iscrollviewを使えばいいみたいんだけど、そもそもあまりシェアのないブラウザに対して、そこまでjsやcssを含めるのもなーという印象がある。

その他の参考URL
overflow scroll issue in android 2.x
Androidのoverflow:auto/scroll対策

2015/04/12

[underscore.js][JavaScript]unescapeメソッド

昨日のエントリーでhtmlエスケープするescapeメソッドを書いたが、その逆にエスケープした文字列を元に戻すにはどうすればいいのだろうか?

unescapeメソッドを使えばいけそうだ。

_.unescape('&lt;script&gt;alert(&quot;hoge&quot;)&lt;/script&gt; &amp; ');
出力結果は、<script>alert("hoge")</script> &
となる。

これもいいね。

2015/04/11

[underscore.js][JavaScript]escapeメソッド

htmlの文字データをエスケープする時に、underscore.jsに便利なメソッドがあった。

そのものずばり、escapeメソッド。

_.escape('<script>alert("hoge")</script> & ');
出力結果は、&lt;script&gt;alert(&quot;hoge&quot;)&lt;/script&gt; &amp;
となる。

これはいい。