android studio常见控件

3.1常用控件

1、TextView
显示文本信息。
2、Button(按钮)
android:textAllCaps=“false” 禁用自动大写
对于按钮的监听事件有两种方法
使用匿名类方式注册监听器

Button button=findViewById(R.id.Button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "button被点击", 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);
        button.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch(v.getId()){
            case R.id.Button:
                Toast.makeText(this, "这是button", Toast.LENGTH_SHORT).show();
                break;
            default:break;
        }
    }
}

3、EditText(输入框)
一些属性:
输入框提示:android:hint=“用户名”
设置密码样式:android:password=“true”
输入框达到与用户进行交互的目的,我们先将输入信息获取。
结合button,点击则输入完毕,获取信息。首先findViewById获取editte实例,然后在按钮的点击事件里调用EditText的getText()获取内容,再调用toString()转换成字符串,最后显示出来。

public class MainActivity extends AppCompatActivity implements View.OnClickListener{
   private EditText editText;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button=findViewById(R.id.Button);
        button.setOnClickListener(this);
     editText=findViewById(R.id.ed_1);
    }
    @Override
    public void onClick(View v) {
        switch(v.getId()){
            case R.id.Button:
                String Text=editText.getText().toString();
                Toast.makeText(this, Text, Toast.LENGTH_SHORT).show();
                break;
            default:break;
        }
    }
}

4、ImageView(显示图片)
将图片放进drawable目录里,在代码中可以实现图片的转换。
在点击转换按钮时,用对应的ImageView调用setImageResource(图片二) 方法改成图片二。
5、ProgressBar(进度条)
旋转的进度条可以用来表示我们正在加载的数据,在数据加载完同时进度条也应该消失。这时不得不介绍一下两个方法
第一、android:visibility来指定:visible 可见的 invisible 不可见的但仍然占据原来的位置和大小 gone 不可见,且不再占用空间;
第二、在代码里使用setVisibility()方法,对应有三种值:View.VISIBLE,View.INVISIBLE,View.GONE.
getVisibility()方法可以获得当前的进度条的状态。
6、AlertDialog(对话框)
创建一个对话框:
1)首先用AlertDialog.Builder创建一个实例dialog;
2)然后可以用.setTitle()方法设置标题,用.setMessage()设置内容,用setCancelable()可以否用Back键关闭对话框;
3)用setPositiveButton()方法为对话框的按钮的点击事件;
4)用setNegativeButton()方法设置取消按钮的点击事件;
5)最后可以调用show()方法将对话框显示出来。

 public void onClick(View v) {
        switch(v.getId()){
            case R.id.Button:
                AlertDialog.Builder dialog=new AlertDialog.Builder(MainActivity.this);
                dialog.setTitle("this is a dialog");
                dialog.setMessage("this is the message");
                dialog.setCancelable(false);
                dialog.setPositiveButton("yes", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                    }
                });
                dialog.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                    }
                });
                dialog.show();
                break;
            default:break;
        }
    }  

7、ProgressDialog(进度对话框)
与对话框用法相似,但是多了一个进度条,一般用于在操作比较耗时,让用户耐心等待。
如果在setCancelable()中传入了false,表示该对话框不能用手机上Back键取消掉,但是当数据加载完后我们一定要记得用dismiss()方法来关闭对话框。

到这里你是不是还兴致勃勃,满心期待与其他控件呢?废话不多说,我们再学一波。
8、RadioButton(单选框)
先设置一个RadioGroup,设置方向(横向或纵向),然后在组里面添加RadioButton,依次设置。
可以用android:checked="true"使其中一个选项默认选中。
9、checkbox(复选框)
复选框可以多选。利用setOnCheckedChangeListener()方法来监听,我们给两个checkbox设置监听:

public class MainActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener {
   private EditText editText;
   private CheckBox cb_1,cb_2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
     cb_1=findViewById(R.id.cb_1);
     cb_2=findViewById(R.id.cb_2);
     cb_1.setOnCheckedChangeListener(this);
     cb_2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
         @Override
         public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
             String desc2=String.format("你%s了第二个checkbox",isChecked?"勾选":"取消");
             Toast.makeText(MainActivity.this, desc2, Toast.LENGTH_SHORT).show();
         }
     });
    }
    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        String desc=String.format("你%s了第一个checkbox",isChecked?"勾选":"取消");
        Toast.makeText(this, desc, Toast.LENGTH_SHORT).show();
    }
}

好啦常用控件介绍到这里了,期待与你再会,下篇将会有开关等更多控件简要介绍以及形状图形的设置。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值