Android从零开始(三)----UI组件之常用控件简述
2018-10-22 本文已影响0人
KinFish
引言
在写这篇文章之前,我认真的想了一下怎么去将这些常用的控件方法,一个一个的去讲所有的控件肯定是不现实的,基于大家都有编写过html的基础,再加上XML的形式与html有一定的相似之处,所以我打算直接写一个页面,将所有的常用控件都添加进去,直接让大家看到怎么使用。
使用方法
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:text="我是文本框"
/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="我是输入框"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="我是按钮"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"/>
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我是单选按钮1"/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="我是单选按钮2"/>
</RadioGroup>
</LinearLayout>
实现效果
图2-1 常用控件举例与html相同,XML也是标签化的语言,一个标签,然后确定位置,填入所需要的属性就可以建立一个你所需要的控件。然而,在XML文件中设定的控件怎么在java文件中去使用呢?其实也很简单,在标签中再多一个属性,为这个控件添加一个id属性,给他一个独有的id,ide就会自动将这个控件注册至R文件,然后在java文件中先初始化一个对象,通过findViewById拿到这个控件,然后就可以对这个控件做相应的操作。
<TextView
android:id="@+id/textView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20sp"
android:text="我是文本框"
/>
public class MainActivity extends AppCompatActivity {
TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = findViewById(R.id.textView);
}
}
肯定会有人想问,R文件是什么,那就下一篇单独抽出一些对象来讲一下吧。
再讲一个比较好玩的xml里面的控件问题,是不是我们只能用原生所提供的控件呢,我都这么问了,答案肯定是不是了。xml文件中可以使用各种各样的其他控件,那其他控件有什么呢?
这个时候我懂的玩法就两种了,有大神看到还有其他的也希望做做提醒
一种就是去自定义一个组件,通过java去写样式写动画,然后在xml文件中使用
另外一种就更简单了,网上有各种各样的开源库,只需要去build.gradle中写出依赖,就直接可以在xml文件中使用别人写好的自定义组件,是不是很方便!而且自定义组件可能会比原生的组件要漂亮很多适用性更强。
总结
这一篇主要讲了一下一些常用控件,没有使用很大的篇幅,因为我觉得这些实在是很简单,就不再去赘述了,看看代码基本就知道怎么去写了。在讲这一篇的时候,发现还有一些基础的东西需要讲一下,决定下一篇去讲一下这些东西。