ビットボードで作成した盤面を表示してみます。タッチ処理もついでに実装してみます。
ビットボードは初めて作ってみたのでいい具合にはまりました。
作成内容
8x8のビットボード
ビットボードでビットが1なら緑の四角を描画
タッチした箇所を反転
作成順番
画面に四角を表示を実装
ビットボードの実装
タッチイベントの実装
タッチ位置からビットボードの表示の反転の実装
はまった所
Javaだとlongで64ビットまで利用できるようです。
long data = 0xffffffffffffffff;
だと代入できないので別の方法を使いました。
1を左にシフトさせていくと符号の関係なのか、おかしな動きをするので、
一番上のビットに1を立てたデータから右へ符号なしのシフトに変更しています。
タッチイベントのY座標判定が上部に表示されるアイコン分ずれるようなので補正しています。
ソースコード
画面キャプチャー2枚に収まりました。
Android 4.1対象でBlankActivityで作成したプロジェクトから使っていないコードをばっさり削除しています。
(1)変数、viewの呼出、タイマー処理

(2)viewの実装、タッチ処理、ビットの反転処理、ビットの判定処理

実行画面
実行後タッチして丸を書いてみただけのものです。

あと携帯を縦横替えるとビットボードも初期化されるので縦固定にしました。
FREETEL Priori3以外にもう一台古いAndroid端末も動作確認してます。
開発環境
ubuntu 15.10
Android Studio 1.5.1
Java openjdk version "1.8.0_66-internal"
FREETEL Priori3 LTE SIMフリー
Android 5.1
参考文献
【Android】Viewに描画する
ビット演算子
16進数文字列を整数型へ変換する
画面タッチイベントの基本(1)
ビットボードは初めて作ってみたのでいい具合にはまりました。
作成内容
8x8のビットボード
ビットボードでビットが1なら緑の四角を描画
タッチした箇所を反転
作成順番
画面に四角を表示を実装
ビットボードの実装
タッチイベントの実装
タッチ位置からビットボードの表示の反転の実装
はまった所
Javaだとlongで64ビットまで利用できるようです。
long data = 0xffffffffffffffff;
だと代入できないので別の方法を使いました。
1を左にシフトさせていくと符号の関係なのか、おかしな動きをするので、
一番上のビットに1を立てたデータから右へ符号なしのシフトに変更しています。
タッチイベントのY座標判定が上部に表示されるアイコン分ずれるようなので補正しています。
ソースコード
画面キャプチャー2枚に収まりました。
Android 4.1対象でBlankActivityで作成したプロジェクトから使っていないコードをばっさり削除しています。
(1)変数、viewの呼出、タイマー処理

(2)viewの実装、タッチ処理、ビットの反転処理、ビットの判定処理

実行画面
実行後タッチして丸を書いてみただけのものです。

あと携帯を縦横替えるとビットボードも初期化されるので縦固定にしました。
FREETEL Priori3以外にもう一台古いAndroid端末も動作確認してます。
開発環境
ubuntu 15.10
Android Studio 1.5.1
Java openjdk version "1.8.0_66-internal"
FREETEL Priori3 LTE SIMフリー
Android 5.1
参考文献
【Android】Viewに描画する
ビット演算子
16進数文字列を整数型へ変換する
画面タッチイベントの基本(1)