Android常用控件

Android常用控件TextView显示文本<TextViewandroid:id="@+id/text_view"android:layout_width="match_pa

大家好,又见面了,我是你们的朋友全栈君。

TextView

显示文本

<TextView
	android:id="@+id/text_view"
	android:layout_width="match_parent"
	android:layout_height="wrap_content"
	android:gravity="center"
	android:textSize="24sp"
	android:textColor="#00ff00"
	android:text="This is TextView" />

android:id :给当前控件定义了一个唯一标识符。

android:layout_width:指定控件的宽度,可选值:match_parent (fill_parent)和wrap_content ,match_parent 表示让当前的控件的大小和父布局的大小一样,也就是由父布局来决定当前控件的大小;wrap_content表示让当前控件的大小能够刚好包含住里面的内容,也就是由控件内容决定当前大小,也可以设置特定的大小。

android:layout_height:指定控件的高度,内容同上。

android:gravity :来指定文字的对齐方式,可选值有top、bottom、left、right、center等。

android:textSize: 指定文字的大小。

android:textColor: 指定文字的颜色。

android:text:指定TextView中的文本显示内容。

Button

最常用的按钮

<Button
	android:id="@+id/button"
	android:layout_width="match_parent"
	android:layout_height="wrap_content"
	android:text="Button"
	android:textAllCaps="false" />

android:textAllCaps:是否将英文字母自动转换成大写

EditText

在控件里输入和编辑内容

<EditText
    android:id="@+id/edit_text"
    android:layout_width="match_parent"
    android:Layout_height="wrap_content"
    android:hint="Type something here"
    android:maxLines="2"/>

android:hint :指定了一段提示性的文本。

android:maxLines :指定了EditText的最大行数为两行,这样当输入的内容超过两行时,文本就会向上滚动,而EditText则不会再继续拉伸。

ImageView

在界面上展示图片,图片通常都是放在以“drawable”开头的目录下。

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

android:src :给ImageView指定了一张图片。

ProgressBar

用于在界面上显示一个进度条,表示我们的程序正在加载一些数据。

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

style:设置进度条样式。

android:max:设置进度条最大值。

AlertDialog

可以在当前的界面弹出一个对话框,置顶于所有界面元素之上的,能屏蔽掉其他控件的交互能力。

@Override
public void onClick(View v) {
	switch (v.getId()) {
		case R.id.button:
			AlertDialog.Builder dialog = new AlertDialog.Builder (MainActivity.this);
			dialog.setTitle("This is Dialog");
			dialog.setMessage("Something important.");
			dialog.setCancelable(false);
			dialog.setPositiveButton("OK", 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;
		}
	}
}

ProgressDialog

类似于AlertDialog,会在对话框中显示一个进度条。

@Override
public void onClick(View v) {
	switch (v.getId()) {
		case R.id.button:
			ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
			progressDialog.setTitle("This is ProgressDialog");
			progressDialog.setMessage("Loading...");
			progressDialog.setCancelable(true);
			progressDialog.show();
			break;
		default:
			break;
		}
	}
}

注意,如果在setCancelable() 中传入了false ,表示ProgressDialog是不能通过Back键取消掉的,这时你就一定要在代码中做好控制,当数据加载完成后必须要调用ProgressDialog的dismiss() 方法来关闭对话框,否则ProgressDialog将会一直存在。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155318.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JS数组合并(5种)

    JS数组合并(5种)前言项目过程中,经常会遇到JS数组合并的情况,时常为这个纠结。这里整理一下。简单而实用的for最容易想到的莫过于for了。会变更原数组,当然也可以写成生成新数组的形式。letarr=[1,2]letarr2=[3,4]for(letiinarr2){arr.push(arr2[i])}console.log(arr)//[1,2,3,4]arr.concat(arr2)会生成新的数组。letarr=[1,2]let

    2022年6月30日
    30
  • Ubuntu 20.04 CUDA&cuDNN安装方法[通俗易懂]

    Ubuntu 20.04 CUDA&cuDNN安装方法[通俗易懂]下载cuda输入nvidia-smi命令查看支持的cuda版本如果无法查看,则说明尚未安装nvidia驱动,点击附加驱动,选择对应版本的驱动即可自动下载。从https://developer.nvidia.com/cuda-toolkit-archive下载对应版本的cuda,选择18.04的版本即可。gcc降级Ubuntu20.04自带的gcc版本为9.7….

    2022年6月13日
    76
  • docker 容器内部访问宿主机_docker访问宿主机文件

    docker 容器内部访问宿主机_docker访问宿主机文件在使用Docker部署应用时,Docker推荐的方式是将应用及其所依赖的服务(MySQL,Redis等)均使用Docker部署,并通过link或自定义网络相连接。但是,当应用所依赖的服务被安装在宿主机上时,我们需要让容器中的应用能够访问到部署在宿主机上的服务。本文将介绍实现这一目的的几种方案,并分析其优缺点。首先我们需要了解一些关于Docker网络的基础知识。Docker网络Docker提供…

    2022年8月20日
    64
  • Could not download kotlin-reflect.jar 完美解决

    Could not download kotlin-reflect.jar 完美解决

    2021年10月1日
    52
  • MSAgent 详细解说(下)

    MSAgent 详细解说(下)七、我的菜单右键点击角色是不是会弹出一个菜单?什么,只有Hide一项?想不想定义一个个性的菜单呢?js代码&lt;object style="visibility:hidden" id="MSAgent" classid="CLSID:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F"&gt;&lt;/object&gt;  &lt;…

    2022年6月29日
    25
  • Java 继承、多态与类的复用

    Java 继承、多态与类的复用本文结合Java的类的复用对面向对象两大特征继承和多态进行了全面的介绍。首先,我们介绍了继承的实质和意义,并探讨了继承,组合和代理在类的复用方面的异同。紧接着,我们根据继承引入了多态,介绍了它的实现机制和具体应用。此外,为了更好地理解继承和多态,我们对final关键字进行了全面的介绍。在此基础上,我们介绍了Java中类的加载及初始化顺序。最后,我们对面向对象设计中三个十分重要的概念-重载、覆盖与隐藏进行了详细的说明。

    2022年7月8日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号