首先来简单区分下TextView跟EditText:
一开时的时候,我就区分不了TextView跟EditText,觉得不都是文本框吗。
实际上,这两东西是很相似的,他们的大部分属性都能互用,最大的不同点就是TextView是显示文本,用户无法输入,而EditText是可以与用户交互,用户可以输入内容的。
TextView的功能及用法:
TextView的功能就是用来显示文本,预先设定的文本或者后台得到的文本。TextView具有很多XML属性,开发者可以根据需求为其定义。
下面举个简单的例子:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ff0000"
android:width="20dp"
android:height="20dp"
></TextView>
<TextView
android:layout_width="136dp"
android:layout_height="51dp"
android:text="我是TextView" >
</TextView>
<TextView
android:layout_width="144dp"
android:layout_height="40dp"
android:text="我是TextView"
android:textColor="#ff0000" >
</TextView>
<TextView
android:layout_width="303dp"
android:layout_height="83dp"
android:text="我是TextView"
android:textSize="20pt" >
</TextView>
效果如下:
当然,我们也可以为TextView添加一个ID,然后在Activity里面重新给TextView赋予新内容。
请看代码:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.textview_demo);
TextView tx = (TextView) findViewById(R.id.textview);
tx.setText("改变内容!!");
}
<TextView
android:id="@+id/textview"
android:layout_width="303dp"
android:layout_height="83dp"
android:text="我是TextView"
android:textSize="20pt" >
</TextView>
这样我们就可以动态设置TextView的text属性了。
EditText的功能及用法:
前面说过,EditText是用户与系统的交互的输入框。
首先,我们把前面的代码中的TextView全部改成EditText会有什么效果呢?
看以看出,EditText的用法跟TextView是差不多的。
我们可以用getText().toString();方法获取EditText的内容如下代码:
EditText edt = (EditText) findViewById(R.id.edt1);
String str = edt.getText().toString();
//TextView tx = (TextView) findViewById(R.id.textview);
Toast.makeText(getApplicationContext(), str, 3000).show();