常见界面控件-第三章

文章目录

    • 3.1TextvVew文本控件
    • 3.2Button按钮控件
    • 3.3EditText编辑框控件
    • 3.4ImageView图片控件
    • 3.5RadioButton单选按钮控件
    • 3.6CheckBox复选框控件

3.1TextvVew文本控件

属性名称 功能描述
android:maxLength 设置文本最大长度,超过长度的文本不显示
androisd:lines 设置文本行数,超出行数的文本不显示
android:maxLines 设置文本最大行数,超出行数的文本不显示
android:ellipsize 设置超出文本的显示方式为…
android:drawableTop 设置文本顶部显示图像
android:lineSpacingExtra 设置文本的行间距
android:textStyle 设置文本样式

3.2Button按钮控件

为button按钮设置点击事件的四种方式:

  1. 使用独立类实现点击事件
public class MainActivity extends AppCompatActivity implements View.OnClickListener {  
	 Button button;  
  
 @Override  
 protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
		setContentView(R.layout.activity_main);  
		button = findViewById(R.id.button);   
  
 //独立类实现点击事件  
 View.OnClickListener listener = new View.OnClickListener() {  
            @Override  
 public void onClick(View view) {  
                System.out.println("独立类");  
 }  
        };  
 //监听器与button按钮绑定  
 button.setOnClickListener(listener);  
   
 }  
  
}

  1. 在布局文件中指定onClick属性
<Button
		……
	android:onClick="click"/>

同时在activity中定义方法实现点击事件
注意:实现点击事件的方法名与onClick属性值要相同

public class MainActivity extends AppCompatActivity {  
    private Button button1; //成员变量  
  
 @Override  
 protected void onCreate(Bundle savedInstanceState) {  
	    super.onCreate(savedInstanceState);  
		setContentView(R.layout.activity_main);
		button1 = findViewById(R.id.button1); //获取button1 id  
  
 }  
  
    public void click(View view) {  
        button1.setText("按钮已被点击");  
 }  
}

  1. 使用匿名内部类
public class MainActivity extends AppCompatActivity {
	private Button button2;//声明变量
  
 @Override  
 protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
		setContentView(R.layout.activity_main); 
		button2 = findViewById(R.id.button2);//获取button2 id
		//使用匿名内部类实现按钮点击事件
		button2.setOnClickListener(new View.OnClickListener()){
		@Override
		public void onClick(View view){
			button2.setText("按钮已被点击")
		}
	}  
 }    
}
  1. 通过OnClickListener接口
public class MainActivity extends AppCompatActivity implements View.OnClickListener {   
	private Button button3;  
  
 @Override  
 protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
		setContentView(R.layout.activity_main);   
		button3 = findViewById(R.id.button3);//获取button3 id  
		button3.setOnClickListener(this);  
 }  
    @Override  
	public void onClick(View view) {  
        button3.setText("按钮已被点击");  
 }  
}

3.3EditText编辑框控件

属性名称 功能描述
android:hint 设置提示文本信息
android:textColorHint 设置提示文本信息
android:password 在编辑框输入时显示"."
android:phoneNumber 设置编辑框只能输入数字
android:minLines 设置文本最小行数
android:scrollHorizontally 文本信息超出编辑框时,是否出现横条
android:editable 设置是否可编辑

3.4ImageView图片控件

属性名称 功能描述
android:src 设置控件需要显示的图片资源
android:scaleType 将图片资源缩放或移动
android:tint 将图片渲染成指定颜色

3.5RadioButton单选按钮控件

  • 两种状态:选中或未选中
属性名称 功能描述
android:checked 值为true表示选中状态
android:checked 值为false表示未选中状态
  • 通常与RadioGroup组合使用,RadioGroup-组合单选框,可容纳多个RadioButton
  • RadioGroup继承自LinearLayout,使用orientation属性控制单选框的排列方向
  1. XML布局代码:
<RadioGroup  
 android:id="@+id/rg"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:orientation="vertical">  
  
 <RadioButton android:id="@+id/rd1"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:text=""  
 android:textSize="25sp"/>  
 <RadioButton android:id="@+id/rd2"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:text=""  
 android:textSize="25sp"/>  
RadioGroup>  
<TextView  
 android:id="@+id/tv"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:textSize="25sp"/>
  1. activity-java代码-为单选框设置监听
public class MainActivity extends AppCompatActivity implements View.OnClickListener {  
     private RadioGroup radioGroup;  
	 private TextView textView;  
  
 @Override  
 protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
		setContentView(R.layout.activity_main);  
		radioGroup = findViewById(R.id.rg);//获取radioGroup id  
		textView = findViewById(R.id.tv);//获取textView  id  
		radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {  
            @Override  
 public void onCheckedChanged(RadioGroup radioGroup, int i) {  
                if (i == R.id.rd1){  
                    textView.setText("您的性别是:男");  
 }else {  
                    textView.setText("您的性别是:女");  
 }  
            }  
        });  
 }  
}

3.6CheckBox复选框控件

  • 两种状态:选中或未选中
属性名称 功能描述
android:checked 值为true表示选中状态
android:checked 值为false表示未选中状态
  1. XML布局代码:
<TextView  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:text="请选择兴趣爱好"  
 android:textSize="25sp"/>  
<CheckBox  
 android:id="@+id/cb1"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:text="羽毛球"  
 android:textSize="20sp"/>  
<CheckBox  
 android:id="@+id/cb2"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:text="乒乓球"  
 android:textSize="20sp"/>  
<CheckBox  
 android:id="@+id/cb3"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:text="棒球"  
 android:textSize="20sp"/>  
<TextView  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:text="您选择的兴趣爱好是:"  
 android:textSize="25sp"/>  
<TextView  
 android:id="@+id/tv1"  
 android:layout_width="wrap_content"  
 android:layout_height="wrap_content"  
 android:textSize="18sp"/>
  1. java代码-实现复选框控件的点击事件
   public class MainActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener {  
    private TextView textView;  
	private String textViews;  
	private CheckBox checkBox1;  
	private CheckBox checkBox2;  
	private CheckBox checkBox3;  
  
 @Override  
 protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
		setContentView(R.layout.activity_main);  
		checkBox1 = findViewById(R.id.cb1);  
		checkBox2 = findViewById(R.id.cb2);  
		checkBox3 = findViewById(R.id.cb3);  
		checkBox1.setOnCheckedChangeListener(this);  
		checkBox2.setOnCheckedChangeListener(this);  
		checkBox3.setOnCheckedChangeListener(this);  
		textView = findViewById(R.id.tv1);  
		textViews = new String();  
 }  
  
    @Override  
 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {  
        String motion = buttonView.getText().toString();  
 if (isChecked){  
            if (!textViews.contains(motion)){  
                textViews = textViews + motion;  
 textView.setText(textViews);  
 }else {  
                if (textViews.contains(motion)){  
                    textViews = textViews.replace(motion,"");  
 textView.setText(textViews);  
 }  
            }  
        }  
    }  
}

你可能感兴趣的:(Android,java,开发语言,后端,android)