当前位置:主页 > 查看内容

Android中 UI界面的常用组件

发布时间:2021-05-08 00:00| 位朋友查看

简介:文章目录 Button组件 TextView组件 EditText组件 ImageView组件 AlertDialog组件 ProgressBar组件 总结本文介绍了很多好玩有有用的组件。主要为读者提供一些组件的模板并未给出完整可运行的project。具体的参数设计以及应用还需要读者再参考其他资料。 组件……


组件的应用大同小异,因而我们主要以展示代码为主,以方便读者直接复制粘贴应用~~~~

Button组件

首先在UI界面,我们要定义Button的展示效果

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <Button
        android:id="@+id/button_3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button 3"
        />


</LinearLayout>

其对应的效果为:

单纯的定义一个UI组件,没有任何意义,所以我们还要在activity设置他的一些属性。譬如我们生成他的一个点击事件,实现代码如下:

Button button=(Button) findViewById(R.id.button_3);
button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //输入想要执行的命令
                System.out.println("神通");
            }
        });

同样,在activity中,首先要定义一个Button变量,然后找到UI中对应的ID,setOnClickListener()是为其设置点击事件,如此便实现了点击按钮的功能。

TextView组件

简简单单
UI中,可以设置TextView的很多属性,比如位置、颜色、大小。在这里就不一一列举。最关键的属性是ID,以便于在activity中调用。

<TextView
        android:id="@+id/text_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="This is TextView" />

activity中,我们用setText()显示内容。

 TextView textView1=(TextView)findViewById(R.id.text_view);
        textView1.setText("a");

好像显示的数据类型只能如图?
在这里插入图片描述

EditText组件

该组件是一个很好用的组件,实现了真正的人机交互。允许用户在该控件里面编辑内容,并可以对其进行处理。

代码如下

<EditText
        android:id="@+id/editext"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="在这里输入"
        />

activity中的使用也很简单。我们在这里综合上面三个组件,在EditText中随意写入一些内容,然后通过Button的点击事件,将写入EditText的内容传递给TextView。实现代码如下:

Button button=(Button) findViewById(R.id.button_3);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                EditText edittext1=(EditText)findViewById(R.id.editext);
                String a=edittext1.getText().toString();
                TextView textView1=(TextView)findViewById(R.id.text_view);
                textView1.setText(a);
            }
        });

it is good!!!

ImageView组件

ImageView主要用于显示图片。通常照片放在drawable中,我们放置两张命名为lv.jpg和lv1.jpg。
UI界面和activity界面代码分别如下:
我们首先初始化了一张照片lv1。

<ImageView
        android:id="@+id/image_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:src="@drawable/lv1"
        />

然后在activity中,通过代码事先修改imageview的内容:

ImageView imageView1=(ImageView) findViewById(R.id.image_view);
imageView1.setImageResource(R.drawable.lv2);

哦吼,简简单单。

AlertDialog组件

该组件用于在当前的界面弹出对话框。置顶于所有界面元素之上。一般用于提示一些非常重要的内容。组件代码如下:

AlertDialog.Builder dialog = new AlertDialog.Builder (Third_Activity.this);
                dialog.setTitle("提示!");//为这个对话框设置标题
                dialog.setMessage("您出错了,要否要退出?");//提示内容
                dialog.setCancelable(false);//可否用Back键关闭对话框等属性
                dialog.setPositiveButton("是", new DialogInterface.OnClickListener() {
                    //调用setPositiveButton() 方法为对话框设置确定按钮的点击事件
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        //退出当前activity
                        android.os.Process.killProcess(android.os.Process.myPid());

                    }
                });
                dialog.setNegativeButton("否", new DialogInterface.OnClickListener() {
                    //调用setNegativeButton() 方法设置取消按钮的点击事件
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Intent aaa=new Intent(Third_Activity.this,SecondActivity.class);
                        startActivity(aaa);
                    }
                });
                dialog.show();    //将对话框显示出来

在该段代码里面,可以为每一次选择设置点击事件,进行跳转。

ProgressBar组件

ProgressBar是在界面上显示的进度条,表示我们的程序正在加载一些数据。直接上代码:
UI界面,常规属性定义:

<ProgressBar
        android:id="@+id/progress_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        style="?android:attr/progressBarStyleHorizontal"
        android:max="100"
        />

activity中,需要注意的是,在定义ProgressBar类型的一个变量的时候,要将其放在前面。我们此次为一个点击事件设置了进度条。

public class Third_Activity extends AppCompatActivity {
    
     ProgressBar progressBar ;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_third_);
        progressBar = (ProgressBar) findViewById(R.id.progress_bar);
        Button button=(Button) findViewById(R.id.button_3);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                    int progress = progressBar.getProgress();
                    progress = progress + 10;
                    progressBar.setProgress(progress);


                    
                    
                EditText edittext1=(EditText)findViewById(R.id.editext);
                String a=edittext1.getText().toString();
                TextView textView1=(TextView)findViewById(R.id.text_view);
                textView1.setText(a);

                ImageView imageView1=(ImageView) findViewById(R.id.image_view);
                imageView1.setImageResource(R.drawable.lv2);
     }
        });

    }

}

呕吼,可以搓搓手去看看代码效果了~~~~

总结:本文介绍了很多好玩有有用的组件。主要为读者提供一些组件的模板,并未给出完整可运行的project。具体的参数设计以及应用,还需要读者再参考其他资料。

你学的怎么样呢?

;原文链接:https://blog.csdn.net/qq_44627776/article/details/115442409
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐