【Android】アイテムクリック時にイベントを発生させるListPreferenceを作成する

相変わらずこのような愚にもつかないクソアプリを作っています。まぁ、楽しいんですが…。それなりには。 設計上Preferenceを多用するのが一番楽だと判断しましたし、それは恐らく間違ってないんですが、PreferenceそのものがAndroid SDKにおけるBad Partの一…

【Android】PreferenceActivityで使えるPreferenceを自作する

つい先日、むしゃくしゃしてこのようなアプリを作成、公開しました。 このアプリ自体は内輪ネタの極みなので死ぬほどどうでもいいんですが、色々と個人的に初めての試みがあり、その辺のノウハウをメモしていきたいなと。 と言うわけで、今回は自分でPrefere…

【Android】XmlPullParser使い方まとめ

前回の記事では何の説明もなくXmlPullParserを使ってHTMLをパースしましたが、一応XmlPullParserそのものの使い方も説明しておこうと思います。英語が読めるならドキュメント読むだけで十分だとは思いますが…。 XMLをパースするためのものなので、当然XMLの…

【Android】XmlPullParserでHTMLをパースする

pixivだとかgyazoだとか、あの辺のサイトの画像もプレビュー表示できたらいいなと思ったはいいものの、どうしてもスクレイピングしないと画像のURLがわかりません。 以前AndroidでWebスクレイピングをやった時はJerichoのAndroid版を使ったんですが、(当時…

【JavaScript】Web Workersと戦う

このブログには(リンク記事も含め)約300件ほどの記事がたまっています。 左側にある最新記事一覧やタグ一覧はJavaScriptでTumblrのAPIを叩いてとってきているんですが、これがですね、流石に重過ぎるだろと。 もう5兆回ぐらい言っているんですが、Tumblrに…

【Android】android.widget.Filterがひどすぎるので作り直す

ListViewのデータをフィルタリングするのであればFilterを使うのが一番簡単です。 簡単なんですが、使い物になりません。と言うわけで、継承して作り直します。 android.widget.Filterの挙動 AndroidにおけるFilterっていっぱいありすぎるのでandroid.widget…

【Android】Executorを使用して独自の非同期処理を実装する(3)

前回はAsyncTaskを参考にしつつ必要なものを実装していきました。 今回はAsyncTaskではやっていないExecutorService#shutdownに関する説明と、実際どうやって動かしていくのかを軽く解説して終わりにしたいと思います。 ExecutorServiceのシャットダウン Exe…

【Android】Executorを使用して独自の非同期処理を実装する(2)

前回はExecutor、って言うか、java.util.concurrentパッケージを使って非同期処理を行う方法、Androidで使うならHandlerも必要だよねって話、でもその辺全部を実装する汎用的なクラスを作るとAsyncTaskになっちゃうよ、と言う話をしました。 今回は実際に作…

【Android】Executorを使用して独自の非同期処理を実装する(1)

非同期での画像処理関連を直したり、UserStreamのイベントを処理するスレッドプールをAsyncTaskのスレッドプールと共有させたりしていたら、何だか処理が遅くなってしまいました。 と言うか、AsyncTaskのスレッドプールだけだと流石に厳しいって言うか、スレ…

【Android】非同期通信で画像を取得する際のノウハウまとめ(2)

HTTP経由で画像を取得、ついでにサイズを自動で補正するメソッドを作成しました。 public class ImageUtil { public static Bitmap getBitmapFromHttp(String url, Point maxSize, boolean isSaveCache) { HttpURLConnection con = null; InputStream in = n…

【Android】非同期通信で画像を取得する際のノウハウまとめ(1)

以前AndroidでTwitter4Jを使うときのノウハウまとめとか言う記事でさらさらっと、お茶漬け感覚で解説したんですが、色々といい方法を新たに見つけたのでまとめておきます。 以前の方法での問題点 ざっと列挙すると、こんな感じです。 端末のサイズより大きい…

【Swift】Appleの新言語「Swift」のリファレンスを読む(19) - Dynamic Type、Attribute、Special Literals

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…

【Android】端末の方向やディスプレイサイズから色々なものを動的に変更する

ようやく忙しさが(多少)やわらぎました。 相変わらず時間を見てはのんびりと自作のTwitterクライアントのためのコードを書いており、ちょっとしたネタもたまってきたので吐き出していきます。 端末の方向を動的に取得 / 固定する Androidの端末の回転に関…

【SSIS】フラットファイル接続マネージャーをテキストファイルから生成する

SSISのデータ型はなるべく接続マネージャー or SQLで合わせておいた方がいいみたいな話をしたんですが、SQLはともかくフラットファイル接続マネージャーの設定は結構面倒です。 列名ぐらいなら定義時にヘッダをつけておけばいいんですが、データ型はちまちま…

【Android】ListViewとActionModeを併用する

一週間ほど開いてしまいました。珍しくみんな忙しくてですね…。 最近自作のTwitterクライアントを公開しまして、まだまだαリリース段階なので色々と機能を追加しているんですが、ActionModeとListViewのCHOICE_MODE_MULTIPLEを併用しようとしたら三日間ほど…

【Android】Androidで使用するProGuard勘案

世の中にはProGuardって言う、成果物の不要なクラス・メソッドを自動で削除してくれたり、難読化してくれたりするツールがあります。Support Libraryを使うときはこれも使ったほうがいいとオススメされていたり、ADTでそれなりにサポートされているので使っ…

【SSIS】SSIS覚書 - データフローのコンポーネント(3)

接続マネージャー スクリプト関連(1) (2) (3) SQL実行タスク データフローのコンポーネント(1) (2) (3) 前書き 前々回、前回の続きです。 一旦ここで使ったことがあるものは全部説明しきってしまいます。 知っておくべきこと データフローは各コンポーネント…

【C#】Windows資格情報を操作する

以前C#でWindows資格情報を列挙すると言う記事で試しに作成したソリューションをGitHubに公開したんですが、相当手を加えて列挙だけでなく操作も全部できるようにしたのでした。 したんですが、それを紹介する記事を書いてなかったので書きます。とは言え、…

【SSIS】SSIS覚書 - データフローのコンポーネント(2)

接続マネージャー スクリプト関連(1) (2) (3) SQL実行タスク データフローのコンポーネント(1) (2) (3) 前書き 前回の続きです。今回も飽きるまで説明していきます。 参照変換 個人的には非常によく使うんですが、バッドノウハウだらけの面倒臭いやつです。 …

【SSIS】SSIS覚書 - データフローのコンポーネント(1)

接続マネージャー スクリプト関連(1) (2) (3) SQL実行タスク データフローのコンポーネント(1) (2) (3) 前書き 久しぶりにSSISの話でもしましょう。誰も求めてないと思いますが、日本にも多分、5人ぐらいはこう言う情報を欲しがっている人がいるはずです。そ…

【Swift】Appleの新言語「Swift」のリファレンスを読む(18) - Advanced Operators

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…

【Swift】Appleの新言語「Swift」のリファレンスを読む(17) - Generics

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…

【Swift】Appleの新言語「Swift」のリファレンスを読む(16) - Protocols

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…

【Swift】Appleの新言語「Swift」のリファレンスを読む(15) - Extensions

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…

【SSIS】スクリプトコンポーネントでStream(BLOB)を扱う

SQLのデータ型の中でも最も影が薄いと言うか、使うタイミングがよくわからないBLOBなんですが、SSISも一応対応しています。 SQL Serverだとntext、text、image(それぞれnvarchar(max)、varchar(max)、varbinary(max)の方を使うよう推奨されている)あたりが…

【C#】StreamReader#ReadLineの改行コードを明示的に指定する

ExcelやAccessのデータをコピペしてExcelで保存、それで「CSVを作った」と言い張る輩が日本社会には巣食っているわけですが、あんなものはCSVに対する冒涜です。 と言うのも、セル内改行されているデータが「ダブルクォーテーションで括り、セル内改行部分は…

【Android】ListViewのHeader / Footerに関する処理をハックする(考察編)

以前ListViewのHeader/FooterのViewに直接イベントを設定すると言う記事の最後で「って言うかそもそも、addHeaderView / addFooterViewにクリック時のハンドラを渡せるオーバーロードがあればよかったんですがねぇ。」と書いたんですが、もう自分でその機能…

【Swift】Appleの新言語「Swift」のリファレンスを読む(14) - Type Casting、Nested Types

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…

【Swift】Appleの新言語「Swift」のリファレンスを読む(13) - Optional Chaining

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…

【Swift】Appleの新言語「Swift」のリファレンスを読む(12) - Deinitialization、Automatic Reference Counting

(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…