Android(安卓)UI控件的初识
16lz
2021-12-04
Activity及其生命周期
package com.example.helloworld;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;public class MainActivity extends AppCompatActivity { String TAG = "myTag"; //定义变量 //整个生命周期 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Log.d(TAG, "onCreate: "); }@Overrideprotected void onStart() { super.onStart(); Log.d(TAG, "onStart: ");}@Overrideprotected void onResume() { super.onResume(); Log.d(TAG, "onResume: ");}@Overrideprotected void onPause() { super.onPause(); Log.d(TAG, "onPause: ");}@Overrideprotected void onStop() { super.onStop(); Log.d(TAG, "onStop: ");}@Overrideprotected void onRestart() { super.onRestart(); Log.d(TAG, "onRestart: ");} @Override protected void onDestroy() { super.onDestroy(); Log.d(TAG, "onDestroy: "); }}
UI控件
textView控件的交互
public class MainActivity extends AppCompatActivity { TextView textView; //变量建立连接@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);textView = findViewById(R.id.textView); //关联对象//关联图片 R.drawable.image1//关联视频音频 R.raw.audio1//寻找layout R.layout.layout1} @Override protected void onPause() { super.onPause(); textView.setText("pause"); //设置修改textView的文字 }}
Button控件以及监听器的使用
package com.example.helloworld;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.TextView;public class MainActivity extends AppCompatActivity { TextView textView; Button button1,button2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); textView = findViewById(R.id.textView); button1 = findViewById(R.id.button1); button2 = findViewById(R.id.button2); //设计button1的监听器 button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { textView.setText("左边"); } }); //设计button2的监听器 button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { textView.setText("右边"); } }); }}
多种UI控件的使用
strings.xml
<resources> <string name="app_name">UIDemo</string> <string name="textview">Display</string> <string name="button1">左</string> <string name="button2">右</string> <string name="switch1">开关</string> <string name="button3">确定</string> <string name="editText">请输入数值</string> <string name="radioButton1">Android</string> <string name="radioButton2">Apple</string> <string name="imageView1">image</string> <string name="CheckBox1">语文</string> <string name="CheckBox2">数学</string> <string name="CheckBox3">英语</string>
MainActivity.java
public class MainActivity extends AppCompatActivity { TextView display; Button buttonLeft; Button buttonRight; Button button3; Switch aSwitch; ProgressBar progressBar; EditText editText; RadioGroup radioGroup; ImageView imageView; SeekBar seekBar; CheckBox checkBoxyuwen; CheckBox checkBoxyingyu; CheckBox checkBoxshuxue; RatingBar ratingBar; String yuwen = ""; String shuxue = ""; String yingyu = ""; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); display = findViewById(R.id.textView); buttonLeft = findViewById(R.id.button); buttonRight = findViewById(R.id.button2); button3 = findViewById(R.id.button3); aSwitch = findViewById(R.id.switch1); progressBar = findViewById(R.id.progressBar3); editText = findViewById(R.id.editTextNumber); radioGroup = findViewById(R.id.radioGroup); imageView = findViewById(R.id.imageView); seekBar = findViewById(R.id.seekBar); checkBoxyuwen = findViewById(R.id.checkBox); checkBoxyingyu = findViewById(R.id.checkBox3); checkBoxshuxue = findViewById(R.id.checkBox2); ratingBar = findViewById(R.id.ratingBar); //匿名内部类实现监听器 buttonLeft.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { display.setText(R.string.button1); } }); buttonRight.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { display.setText(R.string.button2); } }); aSwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { if(b) //开的状态 { display.setText("开"); }else { display.setText("关"); } } }); button3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String s = editText.getText().toString(); if (TextUtils.isEmpty(s)) //判断s是不是空的字符串 { s="0"; } progressBar.setProgress(Integer.valueOf(s)); //将输入的数字在进度条上显示 display.setText(s); } }); radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup radioGroup, int i) { //i表示radiogroup中的第几号按键 if(i==R.id.radioButton) //通过监听显示不同选择的logo { imageView.setImageResource(R.drawable.android); }else { imageView.setImageResource(R.drawable.iphone); } } }); seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { @Override public void onProgressChanged(SeekBar seekBar, int i, boolean b) { //当滑动的值改变的时候 display.setText(String.valueOf(i)); //把值i转化为string } @Override public void onStartTrackingTouch(SeekBar seekBar) { //触碰跟踪 } @Override public void onStopTrackingTouch(SeekBar seekBar) { } }); checkBoxyuwen.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { if(b) //如果打勾 { yuwen = "语文"; }else { yuwen = ""; } display.setText(yuwen+shuxue+yingyu ); } }); checkBoxshuxue.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { if(b) { shuxue = "数学"; }else { shuxue = ""; } display.setText(yuwen+shuxue+yingyu ); } }); checkBoxyingyu.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean b) { if(b) { yingyu = "英语"; }else { yingyu = ""; } display.setText(yuwen+shuxue+yingyu ); } }); ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() { @Override public void onRatingChanged(RatingBar ratingBar, float v, boolean b) { Toast.makeText(getApplicationContext(),String.valueOf(v)+"星评价",Toast.LENGTH_SHORT).show(); //Toast出现简短的提示语句(持续一段时间) } }); }}
更多相关文章
- Android圆形图片--自定义控件
- Android(安卓)双向拖动控件(类似 SeekBar)
- android 日期选择控件 DatePicker
- 迁移到Androidx的常用依赖映射
- android 移送控件
- android之RecycleView适配器添加点击事件
- Android分页控件xlistview
- ImageView
- Android圆形图片--自定义控件