| テクパー2020 テクニカルヘルパー | 
| android アンドロイドアプリ開発 | 
| ◆ リソースボタンの配置 ・ リソース(res)で定義の「操作チェック」、「クリア」のボタンを表示します | 
 2. リソース定義を変更します
      
        1)res/values の 「 string.xml 」 の書き換え
      2. リソース定義を変更します
      
        1)res/values の 「 string.xml 」 の書き換え
      | 
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- string name="hello">Hello World, DefineButton!</string -->
    <string name="hello">ボタンの操作チェック</string>
    <string name="app_name">DefineButton</string>
    <!-- ボタンの定義  -->
    <string name="button_check_lbl"> 操作チェック </string>
    <string name="button_clear_lbl"> ク リ ア </string>
</resources> | 
| 
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    />
<!-- ボタンの定義(操作チェック)  -->
<Button
    android:id="@+id/button_check"               <!--  クラスに引き継ぐID -->
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@string/button_check_lbl"    <!-- string.xmlのstring name  -->
    />
<!-- ボタンの定義(クリア)  -->
<Button
    android:id="@+id/button_clear"               <!--  クラスに引き継ぐID -->
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/button_clear_lbl"    <!-- string.xmlのstring name  -->
    />
</LinearLayout> | 
| android.R.attr のlayout_のコンスタント match_parent:親画面と同じ大きさ (fill_parentはmatch_parentに置換え) wrap_content:表示内容に合わせた大きさ | 
| 
package com.proto.definebutton;
import android.app.Activity;
import android.os.Bundle;
import android.graphics.Color;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class DefineButton extends Activity {
    // ボタンの定義
    Button btn_check;                 // 操作チェック
    Button btn_clear;                 // クリア
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        // ボタン情報の取得
        btn_check = (Button)findViewById(R.id.button_check);  // 操作チェック
        btn_clear = (Button)findViewById(R.id.button_clear);  // クリア
        btn_clear.setEnabled(false);
        // クリックリスナーの生成
        ClickCheck clCheck = new ClickCheck();
        btn_check.setOnClickListener(clCheck);
        ClickClear clClear = new ClickClear();
        btn_clear.setOnClickListener(clClear);
    }
    // 操作チェックのクリックリスナーの処理
    class ClickCheck implements OnClickListener {
        @Override
        public void onClick(View view) {
            Button b = (Button)view;
            b.setText("ボタン・クリック");
            b.setTextColor(Color.BLUE);
            b.setEnabled(false);
            btn_clear.setEnabled(true);
        }
    }
    // クリアのクリックリスナーの処理
    class ClickClear implements OnClickListener {
         @Override
        public void onClick(View view) {
            Button b = (Button)view;
            btn_check.setText("操作チェック");
            btn_check.setTextColor(Color.RED);
            btn_check.setEnabled(true);
            b.setEnabled(false);
        }
    }
} | 
| android.widget.Button のButtonクラスの生成 public Button (Context context) | 
| android.view.View のViewtクラスで操作可能状態の指定 // 操作状態の指定 (true:可能,false:不可) public void setEnabled (boolean enabled) | 
| android.view.View.OnLongClickListener のnLongClickListenerの処理 // クリックリスナーの処理(オーバーライド) public abstract boolean onLongClick (View v) | 
| android.widget.TextView のTextViewクラスで指定 // 文字列の指定 (文字列) public final void setText (CharSequence text) // 文字色の指定 (色コード) public void setTextColor (int color) // 文字サイズの指定 (サイズ) public void setTextSize (float size) | 
 (操作チェックのボタンをクリック)
      
        (操作チェックのボタンをクリック)
      
         (クリアのボタンをクリック)
      
        (クリアのボタンをクリック)
      
         
    | Copyright (C) 2010 プログラミングのテクニックをあなたに!!(リトル・ヘルパー) All Rights Reserved. |  |