2014-01-01から1年間の記事一覧
UTF-8の改行コードは\n S-JISの改行コードは\r\n 最近はS-JISを使う機会が減ってきたのであまり気にしないでいいかな
CocoaTouchはAppDelegateが呼び出され,AppDelegate 内の - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions メソッドがアプリケーションを初期化する. その際最初にロードするxibファイルは…
初期設定 Playframworkからeclipsifyコマンドを実行 eclipseのFile -> import -> General -> Exsisting Project …からインポートを実行 eclipseのパーペクティブはJavaにしておく,PlayはJavaEEに基づいていないため 参照jarがごちゃごちゃして見にくいため…
AndroidのGUIビルダーで配置したボタン等へアクセスする方法. 基本中の基本ですが コンポーネントクラスをクラス変数として定義し,Activityで定義されているonCreat関数内でfindViewById関数を使って取得する.引数にIDを与える.IDはRファイルに自動生成…
KiCadをLinuxにインストールしてみた. 環境はUbuntu13.10 64bit. KiCadはWindowsでも動作しますがLinux版のほうがぶっちゃけいいです. ppaで提供されているものは結構バージョンが古かったりするので,公式で提供されているインストールスクリプトが最も…
最近人気のFrameworkのPlayframeworkを触ってみたので PlayはJUnitベースのテストシステムを利用している. testフォルダ以下にテスト群を定義する. テストは一つのメソッドにする.メソッドには@Testアノテーションをつける.テストはassertThatメソッドで…
昨日の投稿とかぶっている部分があるけど… JavaでHTTP Requestを投げる方法 今回はHttpURLConnectionクラスを使ったやりかた. HttpURLConnectionはJavaSEのライブラリ.Androidでは使えるかわからない. http://docs.oracle.com/javase/jp/6/api/java/net/Ht…
HttpPostクラスを使う.AndroidからXMLをPOSTすることはあまりない.通常はJSONを使う. AndroidManifest.xmlにandroid.permissions.INTERNETを設定する必要がある. Androidエミュレータから外部APIに接続する場合,localhostを指定してはいけない.locaoho…
Javaでスレッドを使いたい場合 public MyThread extends Thread { @Override public void run(){ //処理 } } あるいは public void MyJob { public void doJob() { //処理 } } と定義しておいて final MyJob myJob = new MyJob(); (new Thread(new Runnable(…
昨日紹介したNSJSONSerializationはCocoaTouch純正だったけど登場したのはiOS5以降,それ以前はSBJson(旧JSONFramework)がよく使われていたらしい. ちょっと試しただけだけどNSJSONSerializationに勝るとも劣らない高機能っぷりでした. インストールにつ…
iOS5以降はTwitter統合の関係上NSJSONSerializationクラスが追加されたのでJSONがぐっと楽に扱えるようになった. 以下のコードはInstagramにアクセスしたときに書いた実験用のコードの一部. NSString *url = @"SOME_URL"; NSURLRequest *request = [[NSURL…
基本中の基本ですがUIViewを動的に生成し,加える方法. //Create UIView CGRect thumbnailsRect = CGRectMake(0.0, 0.0, 150.0, 150.0); thumbnailsView = [[ThumbnailsView alloc] initWithFrame:thumbnailsRect]; ... //Set thumbnailsView [[self view] …
iOSは(Androidとかでもそうだけど)画面がタッチされたらEventが発生する.Eventはオブジェクトとしてアプリに通知される.Eventオブジェクト内部にタッチされた座標などの情報が含まれているのでそれを取り出してやればOK. イベントハンドラをオーバーライ…
UIScrollViewのサブクラスはスクロール速度を変更することができる. UICollectionViewなどはスクロール速度が速すぎると落ちる可能性がある(経験談). プロパティの decelerationRate を変更すればOK.速度は UIScrollViewDecelerationRateFast UIScrollVie…
Supporting Filesフォルダ内のCredits.rtfがAboutPanelに表示される リッチテキストがそのまま使える
KiCadには高性能なガーバービューアのgerbviewが搭載されていて他の回路図CADで描かれたガーバーも楽々読み込むことができる. 他のオープンソースハードウェアプロジェクト(以下,OSHプロジェクト)の成果物を眺めて参考にしたい場合などはこのgerbviewが地…
オブジェクトの入れ替えなんてあまりやる機会はないかもしれないけどそれだけにあんまり情報がないので… exchengeObjectAtIndex: withIndex: を使えば簡単に入れ替え可能.
PCの命名規則を変更したので これまでPCのホスト名は天使の名前を拝借していたんだけど段々少なくなってきたので命名規則を変更することにした. 惑星の衛星とかそういうのでもいいんだけどもっと機械的につけられるほうがめんどくさくなくていいかな…という…
Ubuntuは一般的なLinuxと違い sudo halt でシャットダウンする事が出来ない ではコマンドラインからどう電源を切るかというと sudo poweroff を使う
Cのrand()が使える.srand()が少し独特. srand([[NSDatedate] timeIntervalSinceReferenceDate]); int val = rand();
iOSのUITableViewでStaticCellsを使う方法はすごく簡単 1.IB上にTableViewControllerをドロップ. 2.Attributes InspectorからStaticCellsを選択. これだけでスタティックなセルを使うことができる. カスタムコントローラを設定する場合は initWithStyle v…
UITableViewやUICollectionViewで画像をダウンロードするときなどに使う. 非同期実行キューに処理を追加する. dispatch_queue_t q_global, q_main; q_global = dispatch_get_global_queue(0, 0); q_main = dispatch_get_main_queue(); q_globalは非同期実…
引っ張って更新を簡単に実装するためのコントロール @property (retain, nonatomic) UIRefreshControl *refreshControl; @synthesize refreshControl = _refreshControl; しておき,viewDidLoadとかで _refreshControl = [[UIRefreshControl alloc] init]; […
NSManagedObject(とそのサブクラス)のプロパティを操作するにはKeyValueCodingを使う NSManagedObject *object … [object setValue:value forKey:@"key"];
UIImageをNSDataに変換するには PNGの場合 NSData *data = UIImagePNGRepresentation(self.pngImage); JPEGの場合 NSData *data = UIImageJPEGRepresentation(self.jpegImage);
Ubuntuではaptを使って必要なパッケージをインストール可能 sudo apt-get install python-wxgtk2.8 Python系はチュートリアルが異様に充実していることが多々あるがwxPythonもご多分にもれずwikiが充実している. wxPyWikiのGettingStartedページはこちら 最…
CollectionViewやTableViewを編集するには当然タップする必要がある.しかしうっかりCellにセグエを結びつけていると編集中でも遷移してしまう. これを解決するためには TableViewCellやCollectionViewCellに設定されているセグエを削除し,ViewController…
Linux 64bit版ではadbが adb : Cannot run program error=2 をはいて起動しない.調べてみるとどうやらadbには64bit版のものはないらしい. ではどうするかというと32bit版のライブラリなどをインストールしておく. Ubuntu 13.04まで sudo apt-get install …
普通は /usr/local/ にインストールするかソフトウェアセンターでインストールする だろうと思ってしまうけどプラグインがユーザ単位で管理出来ない,最新バージョンが使えないなど問題点がある. 釈然としないものはあるけど /home/ユーザ名/ にインストー…
ネイティブで動くLinuxマシンが欲しいなと思い現在Windows VistaとUbuntu13.10のデュアルブート環境を構築中. インストールはあっさり終わったものの再起動したらなぜかBIOS画面が出てこない. 仕方が無いのでBIOSリセットをしてみよう.