Android学習ノート-一般的な基本UIコンポーネントとその一般的な属性値と関連方法


この中のすべてのインスタンスコードはGithubにアップロードされています.見たいのはここに行ってもいいです.https://github.com/Silence9102/Exercise_Android/tree/master/Exercise_UI_Control
1.テキストクラスコンポーネント
TextViewテキストボックスコンポーネント
  • android:text:コンポーネントの表示内容を設定し、属性値はstringを推奨する.xmlリソースファイルを設定して
  • を呼び出す
  • android:textSize:文字サイズを設定し、属性値はn sp、nは任意の正の整数、spは文字サイズ単位
  • である.
  • android:textColor:文字の色を設定し、属性値は予め設定した属性値でもFFFFFFFFのようなフォーマットで調整することができ、グラフィックインタフェースの調整時にRGBは不透明な色を表し、ARGBは透明な色を表す
  • .
  • android:singleLine:コンポーネントの単行表示を設定します.属性値はtrueまたはfalse
  • です.
    EditText編集ボックスコンポーネント
  • android:hint:編集ボックス入力プロンプトを設定し、編集ボックスに入力がない場合にプロンプト内容
  • を表示する.
  • android:inputType:textPasswordがパスワードを入力していることを示すような入力データ型を設定します.入力内容は
  • を非表示にします.
  • android:drawableLeft:編集ボックスの左側に画像を描画します.他の描画方向、startとendの使用方法は、以前のコンポーネント
  • と同等です.
  • android:drawablePadding:前に描画した画像の内側余白を設定する
  • android:lines:編集ボックスの入力行数をnに制限し、それを超えると自動的に非表示になり、スクロールが許可されます.属性値は正の整数
  • です.
    2.ボタン類コンポーネント
    Button一般ボタンアセンブリ
  • android:text:ボタンに表示される内容を設定するために使用され、属性値は
  • と同じである.
  • android:textAllCaps:ボタンの表示文字がすべて大文字かどうかを制御するために使用され、デフォルトはtrue、属性値はtrueまたはfalse
  • である.
  • android:onClick:ボタンをクリックするとトリガーされるカスタム関数を設定し、Javaファイルでボタンにイベントリスナー
  • を追加する方法もあります.
  • 匿名内部クラスによるボタンクリックイベントの傍受
  • .
    		button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Toast.makeText(MainActivity.this, "Button Test Click", Toast.LENGTH_SHORT).show();
                }
            });
    
  • インタフェースを用いてボタンクリックイベントの傍受
  • を実現する.
    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            Button button = findViewById(R.id.button_1);
            button.setOnClickListener(this);
        }
    
    	//  onClick()  
        @Override
        public void onClick(View view) {
            switch (view.getId()) {
                case R.id.button_1:
                    Toast.makeText(this, "Button Test Second Click", Toast.LENGTH_SHORT).show();
                    break;
                default:
                    break;
            }
        }
    }
    

    ImageButtonピクチャボタンコンポーネント
  • android:src:ピクチャボタン表示内容を設定
  • background属性が0000に設定と、画像背景は透明
  • に設定.
    RadioButtonラジオボタンコンポーネント
    //       ,                 
    
    
           
    
           
               
     
    
  • android:text:表示文字を設定
  • android:checked:デフォルトで選択されているかどうかを設定します.属性値はtrueまたはfalse
  • です.
    // RadioGroup                         
            final RadioGroup radioGroup = findViewById(R.id.RadioGroup1);
            radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
                @Override
                public void onCheckedChanged(RadioGroup radioGroup, int i) {
                    RadioButton radioButton = findViewById(i);
                    Toast.makeText(MainActivity.this, radioButton.getText(), Toast.LENGTH_SHORT).show();
                }
            });
    
    
     //                    
            Button testBtn = findViewById(R.id.TestBtn);
            testBtn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    for (int i = 0; i < radioGroup.getChildCount(); i++) {
                        RadioButton radioButton = (RadioButton) radioGroup.getChildAt(i);
                        if (radioButton.isChecked()) {
                            //  Toast    
                            Toast.makeText(MainActivity.this, radioButton.getText(), Toast.LENGTH_SHORT).show();
                            break;
                        }
                    }
                }
            });
    

    CheckedBoxチェックボックスコンポーネント
  • android:checked:デフォルトのチェック状態に設定するかどうか、属性値がtrueまたはfalseでListenerを使用してCheckedBoxを取得する場合の関連情報:
  •         //             final     :https://www.cnblogs.com/dolphin0520/p/3811445.html
           final CheckBox checkBox1 = findViewById(R.id.like1);
           checkBox1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
               @Override
               public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
                   if(checkBox1.isChecked()){
                       Toast.makeText(MainActivity.this, checkBox1.getText(),Toast.LENGTH_SHORT).show();
                   }
               }
           });
    

    設定したListenerがトリガーされたときに、チェックボックスが選択されているかどうかを判断し、選択されている場合は、次の情報を取得します.
    		if(checkBox1.isChecked()){
               checkedMsg+=checkBox1.getText().toString();
             }
    

    3.日付時間クラスコンポーネント
    DatePicker日付セレクタ
    Listenerを使用して、日付セレクタで日付を変更したときに変更された日付データを取得します.
    public class MainActivity extends AppCompatActivity {
    
        int year,month,day;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            DatePicker datePicker = findViewById(R.id.datepicker);
    
            //  Calendar            
            Calendar calendar = Calendar.getInstance();
            year = calendar.get(Calendar.YEAR);
            month = calendar.get(Calendar.MONTH);
            day = calendar.get(Calendar.DAY_OF_MONTH);
    
            // datepicker           
            datePicker.init(year, month, day, new DatePicker.OnDateChangedListener() {
                @Override
                public void onDateChanged(DatePicker datePicker, int i, int i1, int i2) {
                    year = i;
                    month =i1;
                    day = i2;
                    show(i,i1,i2);
                }
            });
        }
    
        private void show(int year , int month , int day){
            String str = year+" "+(month+1)+" "+day+" ";
            Toast.makeText(MainActivity.this,str,Toast.LENGTH_SHORT).show();
        }
    }
    

    TimePickerタイムセレクタ
    Listenerを使用して、[時間セレクタ](Time Selector)で時間を変更したときに変更された時間データを取得します.
    TimePicker timePicker = findViewById(R.id.timepicker1);
            timePicker.setIs24HourView(true);
            timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
                @Override
                public void onTimeChanged(TimePicker timePicker, int i, int i1) {
                    Toast.makeText(MainActivity.this, i+" "+i1+" ", Toast.LENGTH_SHORT).show();
                }
            });
    

    Chronometerタイマー
    Listenerを使用して、タイマーが指定された時間に到着したときにコマンドを実行します.
    //         setbase()           
    //         setFormat()          
    //         start()       
    //         stop()       
    //         setOnChronometerTickListener()            ,             
            Chronometer chronometer = findViewById(R.id.chronometer);
            //                  
            chronometer.setBase(SystemClock.elapsedRealtime());
            chronometer.setFormat("%s");
            chronometer.start();
            chronometer.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() {
                @Override
                public void onChronometerTick(Chronometer chronometer) {
                //     60      
                    if(SystemClock.elapsedRealtime()-chronometer.getBase()>=60000)
                        chronometer.stop();
                }
            });