タグ

ブックマーク / ichitcltk.hustle.ne.jp (9)

  • グラフィックス(7)-Drawableによる描画 - 愚鈍人

    抽象クラスDrawableを継承したクラスを使って、図形を描画する事もでできます。 Drawableクラスを継承したクラスには様々なものがあり、正直なところ、把握しきれていません。 ここでは、とりあえず、ShapeDrawableとBitmapDrawableを用いた図形の描画について、述べる事にします。 Drawableオブジェクトを使うと、図形をオブジェクトとして、どの図形も同じように、アクセスする事ができます。 例えば、どの図形も同じようにsetBoundsメソッドを使って、大きさを自由に伸縮できます。 ShapeDrawableとBitmapDrawable ShapeDrawableを使うと、Shapeクラスを継承したクラスの図形を描画する事ができます。 Shapeを継承したクラスには、以下のものがあります。 RectShape 矩形図形を示す。 RoundRectShape 角

  • グラフィックス(5)-Canvasクラスのメソッドを使って図形を描画する - 愚鈍人

    Canvasクラスのメソッドには、図形を描画する様々なメソッドが用意されています。 描画領域を塗りつぶす 描画領域を塗りつぶすCanvasクラスのメソッドには、以下のものがあります。 void drawColor(int color) Color値で、描画領域を塗りつぶします。 void drawColor(int color, PorterDuff.Mode mode) 2番目の列挙型引数PorterDuff.Modeの意味が理解できず、どのような使い方ができるのか、よくわかりませんでした。 PorterDuff.Modeの引数は「PorterとDuffの12のルール」というものを示しているようで、 どうやら、既に塗りつぶされている色の上に新しい色を合成するみたいです。 とりあえず、以下のURLが参考になりそうなので、載せておきます。 Merlinの魔術- Porter-Duffのルール

    グラフィックス(5)-Canvasクラスのメソッドを使って図形を描画する - 愚鈍人
    KouJustin
    KouJustin 2013/07/23
    パスにそって文字を書くサンプルがある
  • グラフィックス(9)-描画領域のクリップ - 愚鈍人

    描画領域をクリップすると、クリップされた領域のみが描画対象になります。 クリップする領域を指定するCanvasクラスのメソッド 以下のCanvasクラスのメソッドを使って、クリップする領域を指定します。 boolean clipRect(float left, float top, float right, float bottom) float型の引数left, top, right, bottomで指定された矩形領域を、Region.Op.INTERSECTでクリップします。 boolean clipRect(float left, float top, float right, float bottom, Region.Op op) float型の引数left, top, right, bottomで指定された矩形領域を、Region.Opの指定に従ってクリップします。 boolea

    グラフィックス(9)-描画領域のクリップ - 愚鈍人
  • グラフィックス(6)-Bitmapの描画とMatrixの操作 - 愚鈍人

    drawBitmapメソッドの簡単なサンプル CanvasクラスのdrawBitmapメソッドを使って、Bitmapを描画する事ができます。 以下に、drawBitmapメソッドを使ってBitmapを描画する、簡単なサンプルを示します。 このプログラムを実行するには、res/drawableデレクトリに、画像ファイルsample.JPGが保存されている必要があります。 画像ファイルは、JPGだけでなくBMP,PNG,GIFも表示可能なようです。 BitmapFactory.decodeResourceメソッドは、res/drawableデレクトリの画像ファイルを、Bitmapオブジェクトとして取得するメソッドです。 drawBitmapメソッドは、CanvasにBitmapオブジェクトを描画するメソッドで、引数の意味については、次の「drawBitmapメソッドのオーバロードメソッド」を参

    グラフィックス(6)-Bitmapの描画とMatrixの操作 - 愚鈍人
  • eclipseのインストール(Eclipse 3.6.0 Helios編) - 愚鈍人

    プログラミングメモJavaJava-tipseclipseのインストール(Eclipse 3.7 Indigo編)JavaのリフレクションJavaSQLiteデータベース参照型変数と値が未定義の変数とnullと空文字==とequalsメソッドの違い。イニシャライザ(initializer) ― staticイニシャライザとインスタンスイニシャライザネストした型-内部クラス(インナークラス)(1)ネストした型-内部クラス(インナークラス)(2)ネストした型-内部クラス(インナークラス)(3)-内部クラス,外部クラスへのアクセス匿名クラス(無名クラス)とイベントリスナー定数と初期化配列の初期化SAStrutseclipseにSAStrutsのプラグインをインストールチュートリアルのセットアップSAStrutsの新しいプロジェクトを作成する最初に起動されるアクションIndexActionクラス

  • ListViewとListActivity(1)-基礎編 - 愚鈍人

    アンドロイドでリスト表示をおこなうには、ウィジェットであるListViewクラスを使う方法と、 リスト表示専用のアクティビティであるListActivityクラス使う方法とがあります。 リスト表示はAdapterクラスと組み合わせて使う事が前提となっており、 いろいろなAdapterクラスとの組み合わせにより、さまざまなパターンが存在していてややこしい。 Adapterクラスを組み合わせたいろいろなパターンについては、「ListViewとListActivity(3)-応用編」で述べる事として、 今回は、ListViewとListActivityとArrayAdapterクラスを組み合わせた、基的なパターンについてみていく。 ListViewの基形とArrayAdapterクラス まず、ListViewウィジェットの基形として、よく使うであろうArrayAdapterを使った簡単なサ

  • SQLiteでデータベース - 愚鈍人

    アンドロイドでは、SQLiteというデータベースが、標準でサポートされています。 SQLiteはWindow等の他のOSでも使う事ができ、JavaでもJDBCを使ってアクセスする事ができます。 SQLiteになじみの無い方は、 先に「JavaSQLiteデータベース」 を参照して、まず、SQLite単体での使い方に、慣れてみると良いと思います。 データベースの作成とオープン - SQLiteOpenHelperクラスとSQLiteDatabaseクラス アンドロイドでは、SQLiteDatabaseオブジェクトを使って、データベースを操作します。 SQLiteDatabaseオブジェクトを取得するには、通常、ヘルパークラスとして、SQLiteOpenHelperクラスを継承したクラスを作成して、 このクラスよりSQLiteDatabaseオブジェクトを取得します。 以下に、その例を示しま

    SQLiteでデータベース - 愚鈍人
  • ダイアログは永遠に(1) - AlertDialog - 愚鈍人

    ダイアログのはじめのいっぽとして、使いやすく,機能も豊富なAlertDialogを表示してみる。 はじめてのダイアログ まずは、簡単なAlertDialogのサンプルを示す。 このプログラムを実行して、「ダイアログの表示」ボタンを押すと、以下のように表示される。 AlertDialogのコンストラクタは、protected宣言されていて直接コントラクタを使って、インスタンスを生成する事はできない AlertDialogを使うには、AlertDialog.Builderクラスのインスタンスを生成して、このビルダークラスよりアクセスする。 AlertDialog.Builderクラスのコンストラクタの引数には、通常,親となるActivityクラスのインスタンスを指定する。 25行目のAlertDialog.Builderクラスのコンストラクタの引数である「AlertDialogSample.t

    ダイアログは永遠に(1) - AlertDialog - 愚鈍人
  • HandlerとMessage - 別スレッドでのGUI操作 - 愚鈍人

    ProgressDialogのサンプルプログラムをながめていたら、Handlerという見なれぬクラスが使われていた。 Handlerクラスて何だろう、と思って調べてみたらすっかりはまってしまった。 他の記事もそうなのだが、今回は特にサンプルコードをもとに推察で書いている部分が多いので、誤りがあればご容赦いただきたい。 動作確認は、きちんとしているつもりであるが。 別スレッドでのGUI操作の問題点 アンドロイドでも、通常のjavaプログラムのようにThreadクラスが使える。 しかし、アンドロイドのGUIはシングルスレッドにしか対応していないため、 ウィジェット等のGUIオブジェクトを生成したスレッドとは別のスレッドから、ウィジェットに直接アクセスする事はできない。 まず次のプログラムを実行して、別スレッドから直接ウィジェットの操作を試みてみる。 このプログラムを実行してボタンを押すと、新し

    HandlerとMessage - 別スレッドでのGUI操作 - 愚鈍人
  • 1