Android开发工程师文集-相关控件的讲解,五大布局
前言
大家好,给大家带来Android开发工程师文集-相关控件的讲解,五大布局
的概述,希望你们喜欢
TextView控件
TextView控件有哪些属性:
android:id->控件的id
android:layout_width->控件的宽度
android:layout_height->控件的高度
android:text->文本内容
android:textSize->文本的大小
android:textColor->文本的颜色
android:background->控件的背景,可设置颜色或图片
EditText控件
EditText控件有哪些属性:
android:id->
android:layout_width:
android:layout_height:
android:text:
android:textSize:
android:textColor:
android:background:
//
android:hint->输入提示
android:inputType->输入的类型
设置颜色
- 在xml中是android:textColor
- 在Activity中是setTextColor
AutoCompleteTextView
AutoCompleteTextView为控件自动显示输入文本时出现的提示信息。
相关属性:android:completionThreshold="2"
示例代码:
private String[] strings={ "数据1","数据2",....};
//初始化控件
//需要适配器
//初始化数据源
//adpter-autocompleteTextView
autocompleteTextView = findViewById(R.id.autocompleteTextView);
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,strings);
autocompleteTextView.setAdapter(adapter);
MultiAutoCompleteTextView
主要为可多选择值而已。
这里主要用分隔符,可输入多个值
multiAutoCompleteTextView = findViewById(R.id.multiAutoCompleteTextView);
multiAutoCompleteTextView.setAdapter(adapter);
注意要设置分隔符
multiAutoCompleteTextView.setTokenizer(new multiAutoCompleteTextView.CommaTokenizer());
ToggleButton
这个ToggleButton有两种状态,一种是被选中,一种是没有被选中。
可以理解为是电灯的开关效果,该属性有:
android:checked="true"
android:textOff="off"
android:textOn="on"
主要实现的方法:
@Override
public void onCheckedChanged(CompoundButton, buttonView, boolean isChecked){
//图片的切换
imgpicture.setBackgroundResource(isChecked?R.drawable.one:R.drawable.two);
}
Intent跳转
1. startActivity(intent);
2. startActivityForResult(intent,requestCode);
onActivityResult();//MainActivity
onResult();
接下来只学startActivityForresult():
Intent intent = new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent,1);
同在MainActivity中创建onActivityResult()方法:
接收返回来的数据
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode, resultCode, data);
}
那么在SecondActivity中创建onResult()的方法:
回传Intent的对象,回传数据
Intent data=new Intent();
data.putExtra("data",name);
setResult(2,data);
在MainActivity中的onActivityResult():
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == 1 && resultCode == 2){
String name = data.getStringExtra("data");
tv.setText(name);
}
四大组件
Android的四大组件
- Activity
- Service
- BroadcastReceiver
- Content Provider
再次学习一下activity的生命周期
- onCreate();
- onStart();
- onResume();
- onPause();
- onStop();
- onDestroy();
- onRestart();
activity的四种状态:
- 活动状态
- 暂停状态
- 停止状态
- 销毁状态
一个activity的一生:
onCreate()->onStart()->onResume()->onPause()->onStop()->onDestroy()
启动到后台再前台:
onCreate()->onStart()->onResume()->onPause()->onStop()->onRestart()->onStart()->onResume()
设置个小窗口的启动模式周期:
onResume()为获取焦点
onPause()为失去焦点
onCreate()->onStart()->onResume()->onPause()->onResume()
CheckBox与RadioButton
//核心
if(isChecked){
String text = checkBox.getText().toString();
}
这里讲RadioButton,注意RadioGroup就行。
//核心
@Override
public void onCheckedChanged(RadioGroup group, int checkedId){
switch(checkedId){
case R.id.button1:
break;
case R.id.button2:
break;
default:
}
}
当然这里你也可以用RadioButton来监听,但是个人认为RadioGroup比较方便吧!
五大布局
LinearLayout:
android:orientation=""
1. vertical
2. horizontal
android:gravity=""
center,bottom,left,right
android:layout_gravity=""
android:layout_weight=""
//android:layout_height="match_parent"的比例为反,用android:layout_weight=""的话
- layout_gravity调整该布局相对父布局的位置
- gravity是调整该布局中子布局的位置
- 水平的LinearLayout要从左边开始依次放置布局
4.layout_gravity只有在LinearLayout布局中
RelativeLayout:
相对布局,我们只要知道相应的属性就行:
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_centerInParent="true"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_marginLeft="50dp"
android:layout_marginBottom="50dp"
android:layout_toRightOf="@+id/button1"
android:layout_toLeftOf="@+id/button2"
android:layout_below="@+id/button1"
//
android:layout_alignBaseline="@+id/button1"
android:gravity=""
这些根据英文意思就了解了。
FrameLayout:
先放的在下面,都在左上方。
AbsoluteLayout:
android:layout_x="50dip"
android:layout_y="50dip"
TableLayout:
TableRow-View
重要的属性:
//都是从0开始的索引列
android:collapseColumns="1,2"//隐藏
android:shrinkColumns="1,2"//收缩
android:strechColumns="1,2"//拉伸
android:layout_column="1"//显示在第二列
android:layout_span="2"//这个表示一个空间占据两列
如果觉得不错,那就点个赞吧!❤️
总结
- 本文讲了Android开发工程师文集-相关控件的讲解,五大布局,如果您还有更好地理解,欢迎沟通
- 定位:分享
Android
&Java
知识点,有兴趣可以继续关注
Android开发工程师文集-相关控件的讲解,五大布局的更多相关文章
- Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解
前言 大家好,给大家带来Android开发工程师文集-Activity生命周期,启动方式,Intent相关介绍,Activity详细讲解的概述,希望你们喜欢 Activity是什么 作为一个Activ ...
- Android开发工程师文集-layout_weight讲解
前言 大家好,给大家带来Android开发工程师文集-layout_weight讲解的概述,希望你们喜欢 Layout_weight的相关代码展示 <TextView android:layou ...
- Android开发工程师文集-1 小时学会各种Drawable
前言 大家好,给大家带来Android开发工程师文集-1 小时学会各种Drawable的概述,希望你们喜欢 Drawable介绍 Drawable为抽象类,drawable与view有区别的地方,主要 ...
- Android开发工程师文集-1 小时学会Widget小组件开发
前言 大家好,给大家带来Android开发工程师文集-1 小时学会Widget小组件开发的概述,希望你们喜欢 学会用Widget (小组件) Widget小组件很方便,很快捷,可以个性化,自己定制,相 ...
- Android开发中目前流行控件和知识点总结
Android开发中目前流行控件和知识点总结 1.SlidingMenu 滑动菜单 应用案例:Facebook . Path 2.0 .人人.网易新闻 下载地址: https://github.c ...
- Android开发工程师文集-Fragment,适配器,轮播图,ScrollView,Gallery 图片浏览器,Android常用布局样式
Android开发工程师文集-Fragment,适配器,轮播图,ScrollView,Gallery 图片浏览器,Android常用布局样式 Fragment FragmentManager frag ...
- Android开发工程师文集-Android知识点讲解
前言 大家好,给大家带来Android开发工程师文集-Android知识点讲解的概述,希望你们喜欢 WebView讲解 一般通过Intent调用系统的浏览器: Uri uri = Uri.parse( ...
- Android开发工程师文集-1 小时学会SQLite
前言 大家好,给大家带来Android开发工程师文集-1 小时学会SQLite的概述,希望你们喜欢 内容 什么是Sqlite: 效率高,开源,小型,程序驱动,支持事务操作,无数据类型,可嵌入的关系型数 ...
- Android开发之自定义组合控件
自定义组合控件的步骤1.自定义一个View,继承ViewGroup,比如RelativeLayout2.编写组合控件的布局文件,在自定义的view中加载(使用View.inflate())3.自定义属 ...
随机推荐
- VSCode搭建Java开发运行环境
用了一段时间VSCode,觉得还可以,想用VSCode整合不同的开发语言,于是研究了一下利用VSCode搭建Java环境.开发Java程序.网上这方面的帖子有不少,但每人的经历不同,把自己的经历记下来 ...
- sql server 查看锁表SQL【转】
1.select * from sys.dm_tran_locks或sp_LOCK 查看request_node 字段中为'X'(排他锁)或'IX'(意向排他锁)2.用sp_who2 + pid(进程 ...
- ReactiveX 学习笔记(20)使用 RxJava + RxBinding 进行 GUI 编程
课题 程序界面由3个文本编辑框和1个文本标签组成. 要求文本标签实时显示3个文本编辑框所输入的数字之和. 文本编辑框输入的不是合法数字时,将其值视为0. 3个文本编辑框的初值分别为1,2,3. 创建工 ...
- Spring 4 官方文档学习 Web MVC 框架
1.介绍Spring Web MVC 框架 Spring Web MVC 框架是围绕DispatcherServlet设计的,所谓DispatcherServlet就是将请求分发到handler,需要 ...
- Android关于API level、buildToolVersion、CompileSdkVersion
API level: API level是一个整数,它指的是我们使用的框架(Framework)的版本,也就是我们使用的sdk中的各个平台下的android.jar. 但是这个API level又和A ...
- azkaban 配置邮件
1.配置邮件请在azkaban-web-server中进行配置:如下图: /opt/azkaban/azkaban/azkaban-web-server/build/install/azka ...
- 使用LESS对CSS进行预处理
LESS 做为 CSS 的一种形式的扩展,它并没有阉割 CSS 的功能,而是在现有的 CSS 语法上,添加了很多额外的功能,所以学习 LESS 是一件轻而易举的事情. 变量 请注意 LESS 中的变量 ...
- 深度学习中Dropout原理解析
1. Dropout简介 1.1 Dropout出现的原因 在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象. 在训练神经网络的时候经常会遇到过拟合的问题 ...
- shell命令,从字符串中提取数字
echo "2014年7月21日" | tr -cd "[0-9]" 这样就可以提取出2014721
- 动画之一:视图动画 View Animation
原文:https://blog.csdn.net/pzm1993/article/details/77167049 view动画支持4中动画效果,分别是: 透明度动画(AlphaAnimation) ...