簡単だと思っていたのに、結構ハマったのでメモとして残しておきます
参考にしたのは、次の2つの記事です
AndroidのListViewで選択状態の項目の背景色を変える
Custom background color for selected item with “activatedBackgroundIndicator” Navigation Drawer
重要なのは2点だけ
GridViewの行になっているレイアウトのbackgroundに?android:attr/activatedBackgroundIndicatorを設定する
activatedBackgroundIndicatorをThemeでオリジナルのものに変更する
ただし、APIレベル11以降のお話です
layout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
...
2014年6月24日火曜日
AndroidでiBeacon(2)
Posted by sugarspot on 19:46
前回「AndroidでiBeacon(1)」の続きで、今回は検出したBeaconから情報を取得します
取得するのは
UUID
major
minor
電波強度
の4つです
端末を検出したらコールバックされるBluetoothAdapter.LeScanCallbackのonLeScanを変更していきます
onLeScanには3つの引数があり、UUIDなどの情報は第3引数のbyte配列に入っています
その配列は次のようになっています
データ構造
01ブロック目のバイト数
1
フラグ
2
32ブロック目のバイト数
4AD Type
5
会社ID
0x00CがAPPLE
6
7データタイプ0x02がiBeacon
8iBeaconデータのバイト数
9
UUID
16バイト
~
24
25
major
4バイト
26
27
minor
4バイト
28
29電波強度距離計算する際の基準値として利用
データを取得
onLeScanの中身を変更しています
...
2014年6月23日月曜日
AndroidでiBeacon(1)
Posted by sugarspot on 19:20
Beaconを貸して頂いたので、これら何回かに分けてAndroidでiBeaconを触ってみる記事を書いてみようと思います
iBeaconについては、いろいろと情報があると思いますので説明は省きます
iBeaconって何?という方は、まずGoogleなどで検索してみてください
必要なもの
BLEに対応したAndroid 4.3以上の端末
Beacon(今回はBeacon USBを利用)
Beaconの設定
最初にBeaconの設定をしておきます
設定する情報は、Proximity UUID(以降、UUIDと略),Major, Minorとありますが、どの情報を使って検出したいBeaconを判別するかによりますので、1台だけならUUIDだけでも良いかもしれませんし、1台でもMajorまで設定しておいても良いかもしれません
今回は、UUID,Major,Minorを全て設定しておきます
※今回利用するBeaconUSBに専用のアプリがまだ無いので、HPに記載されている設定マニュアルにあるとおり「BLE...
2014年5月28日水曜日
AndroidのFused Locationでの精度調査
Posted by sugarspot on 20:27

仕事の関係で調査が必要でしたので、AndroidのFused LocationにてGPS、Wi-Fi、携帯ネットワークを使った場合に精度がどのようになるのか検証してみました
以下の条件での検証です
Priorityは「LocationRequest.PRIORITY_HIGH_ACCURACY」
permissionは「android.permission.ACCESS_FINE_LOCATION」
仕事場近くの道端にて同じ場所に留まった状態で計測
Wi-Fiにはe-mobileのPocket Wi-Fi(GL06P)を使用
携帯回線はDocomo
計測は、それぞれの条件で7回(画像の2枚めの前半は重複した情報です)
GPS + Wi-Fi + 携帯ネットワーク
精度は25m~63mくらいでした
複数のプロバイダーを利用しているのでgetProviderの値が[fused]になるのかと思っていましたが、あとの携帯ネットワークだけの時も同じ値となります。そのためFused...
Posted in 位置情報
2014年5月12日月曜日
Remote TestKit Webを試してみた
Posted by sugarspot on 15:50

以前(Remote TestKitで実機の動作テスト)で紹介したRemote TestKitがブラウザだけで利用できるようになったので実際に試してみました
まず、ログインすると端末の選択画面がでてきます
専用ソフトの時とだいたいおんなじ感じですね
さっそく、無料でレンタルできる端末の中から「Samsung Galaxy S4」をレンタルしてみます
一覧の右端にある[レンタル]というボタンを押すと、確認ダイアログが表示されます
ダイアログにある[レンタル]を押すとすぐにブラウザ上に端末の動作画面がでてきます
リモート端末にアプリをインストールするには、画面右のメニューから[ファイルを選択]でapkファイルを選択して、[アプリをインストール]のボタンを実行するだけです
今回はApiDemos.apkをインストールして動かしてみました
1.9MBほどあるApiDemos.apkのインストールが完了して動作するまで20秒くらいで、思っていた以上に素早くインストールできました
ドラッグや選択などの動作はリモートなのでそこそこの遅延はあります
試しにApiDemoにあるOpenGL...
Posted in Remote TestKit, Test
2014年4月21日月曜日
ThemeをDialogにしたActivityの枠外タップで閉じる
Posted by sugarspot on 17:51
ThemeをDialogにしてDialogっぽくしたActivityで枠外をタップした際に画面を閉じるには次のような処理を追加すれば良い
@Override
public boolean dispatchTouchEvent(MotionEvent event) {
Rect dialogRect = new Rect();
getWindow().getDecorView().getHitRect(dialogRect);
if (dialogRect.contains((int) event.getX(), (int) event.getY()) == false) {
finish();
}
return super.dispatchTouchEvent(event);
}...
Posted in Tips
2014年1月20日月曜日
AndrOpen Offeceというアプリを教えてもらった
Posted by sugarspot on 19:32

今日、打ちあわせの際にMS Officeのファイルを見る必要があったんだけど、Nexu7に入れてあったQuickOfficeでは遅くて表示ができないということがありました
そんな時に今回紹介するAndrOpen Officeを教えてもらったので、紹介しようと思います
AndrOpen OfficeはAndroidで利用できるOpen Officeで、パソコンで使うOpenOfficeと同じような表示になっています
Open Officeを使ったことが無い方はOffice 2003みたいな見た目と思ってください
(下に画像を載せています)
パソコンと同じような画面なので、すごくメニューとか操作するボタンが小さいです
最初は画面をタッチすることで操作しようとしていて「使い難いな」と思っていたのですが、操作メニューを出すと非常に使いやすくなりました
操作メニューは画面右下にあるディスプレイのマークを押す表示されます
今回は見るだけの利用だったので、編集とかの操作性についてはわかりませんが、表示だけならかなり良さそうです
※右クリックで表示されるメニューは画面を長押しする表示されます
利用できるのは
・文書ドキュメント
・表計算ドキュメント
・プレゼンテーション
・図形描画
・データベース
・数式
となっています
メニューバーとかのサイズが小さいのですが、これは変更することができないようです(たぶん)
設定としては出来るのは以下の3つだけです
・倍率(Default:100%)
・カスタムフォント(Default:設定なし)
・フレームレート(Default:5fps)
表示がカクカクする場合はフレームレートを上げると良いと思います
万能で安定している。と、いう訳ではないですがMS...
Posted in レビュー
登録:
投稿 (Atom)
GridViewやListViewで選択している行の背景色を変更する