タグ

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

  • たかがフォーカス,されどフォーカス - 愚鈍人

    フォーカスとタッチモード Androidのフォーカスの制御は、タッチモードがからんでいてわかりずらい。 タッチモードについては、「l. タッチモード - ソフトウェア技術ドキュメントを勝手に翻訳」を参照。 非タッチモード時とタッチモード時で、異なるAPIが存在する。 Activity画面にTextViewと3つのEditViewとButtonを配置する、以下のようなレイアウトファイルを作成する。 リスト1(main.xml) このプログラムを実行して、各ウィジェットをタッチ(クリック)した場合のフォーカスの移動を確認してみる。 TextViewをタッチしてもフォーカスは、TextViewに移動しない。 EditTextの場合は、タッチする事でフォーカスを移動する事ができる。 Buttonの場合にはタッチした瞬間、一時的にフォーカスが移動するが、その後、タッチ前のフォーカスの位置に戻ってしま

    たかがフォーカス,されどフォーカス - 愚鈍人
    teracy_junk
    teracy_junk 2015/10/30
    今更ながらちょっとハマった
  • バラエティに富んだメニューを(6) - xmlリソースファイルでメニューを定義する - 愚鈍人

    xmlリソースファイルにメニューを定義して、これを読み込んで表示させる事ができる。 xmlリソースファイルの作成 メニューのリソースファイルを作成するには、eclipseのパッケージ・エクスプローラにてAndroidプロジェクトを選択し、 右クリックにて表示されるメニューより、「新規(W)」→「Android XML File」を選択する。 以下のようなダイアログボックスが表示されるので、 ファイル欄にxmlリソースファイルを保存するファイル名を(ここではmenu.xmlを入力)、 「What type of resource would you like to create?」の下に表示されているラジオボタンより、 「メニュー」をチェックして完了ボタンを押す。 これにより、「プロジェクトルート/res/layout/」デレクトリに、 xmlファイルが作成され、以下のような画面が表示される

  • レイアウト(5)-layout_weight属性とweightSum属性 親ウィジェットの残りのスペースを分け合って使う - 愚鈍人

    リスト1の19行目を削除して、text1だけにlayout_weight属性を指定すると、余白部分をtext1だけで独占する事になる。 LinearLayoutのorientation属性をhorizontalに,TextViewを横方向に配置して、 layout_weightありなしの画面を比較すると、以下のようになる。 weightSum属性-分け合う部分の合計を指定 親ウィジェットにweightSum属性を指定すると、余白部分の合計値を指定できる。 子ウィジェットは、その合計値に対してlayout_weightで指定した割合で、余白部分を分け合うことになる。 次の例では、余白部分の合計値を5として、2つのTextViewで余白部分を1対2で分け合うので、余白部分が2余ることになる。 リスト2 コードによるweightの指定 リスト2のレイアウトを、コードを使って実現すると以下のように

  • SDKのアップデート - 愚鈍人

    アンドロイドのSDKがアップデートされた。 「Android 2.2 SDK」(コードネーム:Froyo) 「 開発環境を整える。」で「Android 2.1 SDK」をインストールしたが、 今回は、これを「Android 2.2 SDK」にアップデートしてみる。 SDKアップデート始末記 Android Developersのドキュメント をみると、「Android SDK and AVD Manager」からアプデートすれば良いような事が書いてある。 これでアップデートは楽勝かと思いきや... まず、eclipseより「Android SDK and AVD Manager」を起動して、アップデートをこころみる。 eclipseを起動し、「メニュー」→「ウィンドウ(W)」→「Android SDK and AVD Manager」を選択する。 「Android SDK and AVD

    teracy_junk
    teracy_junk 2011/10/24
    3.0以前からアップデートしようとして遭遇(どれだけ放置してたんだよっていう
  • グラフィックス(4)-座標と座標をあらわすクラス - 愚鈍人

    グラフィックを描画するには、描画する位置を座標で指定する必要があります。 ここでは、座標と座標をあらわすクラスについてみていきます。 描画領域の取得 グラフィックの描画領域は、右上の点を(0,0)として右に向かってx座標の値が、下に向かってy座標の値が増えていきます。 Viewクラスの描画領域を取得するには、getWidthメソッドとgetHeightメソッドを使って取得できます。 SurfaceViewの描画領域も、Viewクラスのサブクラスですので、同じように取得できます。 Canvasクラスにも、getWidthメソッドとgetHeightメソッドがありますが、こちらはWindowのタイトルバーも含めた領域となるようです。 Canvasクラスにも、getWidthメソッドとgetHeightメソッドがあります。 また、View#onSizeChangedメソッドをオーバライトすると、

  • ダイアログは永遠に(2) - ダイアログとアクティビティ - 愚鈍人

    今回は、ダイアログクラス全般についての話題を。 も~っと素直に,も~っと自由に、そのままのDialogクラスでいて AlertDialogクラスではなく、AlertDialogクラスのスーパクラスであるDialogクラス そのもの使って、ダイアログを表示する事もできる。 前回、AlertDialogによって実装した「カスタムダイアログを表示」のサンプルをDialogクラスを使って実現してみる。 プログラムは以下のようになる。 ダイアログのレイアウト用のxmlファイルは、前回と同じものをそのまま使っている。 AlertDialogと異なり、setViewメソッドのかわりにsetContentViewメソッドを使って、 アクティビティのようにコンテンツビューに、Viewオブジェクトを指定する。 AlertDialogクラスは、 安直に使う事ができるダイアログであったが、ビルダークラスを使う事が

    ダイアログは永遠に(2) - ダイアログとアクティビティ - 愚鈍人
    teracy_junk
    teracy_junk 2011/05/31
    ダイアログ面倒…
  • ダイアログは永遠に(1) - AlertDialog - 愚鈍人

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

    ダイアログは永遠に(1) - AlertDialog - 愚鈍人
  • 愚鈍なプログラマーのプログラミングメモ - 愚鈍人

    ようこそお出で下さいました。 システムトラブルにより、プログラミングメモの記事を中止しています。 復旧の目処はたっていません。 ⇒プログラミングメモの記事を復活させました。 まだ試運転中ですが、HOME - 愚鈍人をご参照ください。

  • 1