这一讲我们通过讲解来学习一下EditText控件的使用以及对UI进行简单的优化,熟悉常用属性以及它们的含义,点击观看视频吧~

  • 马上学Android 006 - Edit的简单使用及布局的排版

完整的布局文件如下:

  • activity_main.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00BBFF"
android:orientation="vertical"
tools:context="com.chen.activity.MainActivity">


<EditText
android:text="哈哈,我通过点击鼠标轻易赚了..."
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/etGoalMoney"
/>


<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="点我一次赚一元"
android:id="@+id/btnGetMoney" />


<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="点击一次损失一元"
android:id="@+id/btnLoseMoney" />



</LinearLayout>

得益于Android Studio强大的实时代码预览功能,我们可以随时调整我们的代码来达到目的,下面给出java代码

  • MainActivity.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

public class MainActivity extends Activity{

private Button btnGetMoney; //声明按钮控件变量
private TextView tvGetMoney; //声明文本控件变量
private Button btnLoseMoney;
private EditText etGoalMoney;

private int money = 0 //声明统计变量

@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savaedInstanceState);
setContentView(R.layout.activity_main);

btnGetMoney = (Button) findViewById(R.id.btnGetMoney); //绑定按钮控件
btnLoseMoney = (Button) findViewById(R.id.btnLoseMoney); //绑定按钮控件
tvGetMoney = (TextView) findViewById(R.id.tvGetMoney); //绑定文本控件
etGoalMoney = (EditText) findViewById(R.id.etGoalMoney); //绑定输入框控件

//绑定按钮监听器
btnGetMoney.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String strInputMoney = etGoalMoney.getText().toString().trim();
int iMoney = Integer.parseInt(strInputMoney);
if (iMoney == money) {
Toast.makeText(MainActivity.this, "你经过努力已经完成目标!", Toast.LENGTH_SHORT).show();
} else {
money++;
tvGetMoney.setText("哈哈,我通过点击鼠标轻易赚了" + money + "元");
}
}
});

btnGetMoney.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(money == 0){
//提示用户,使用Toast提示
Toast.makeText(Mainactivity.this,"现在已经是穷光蛋了,不要再按了!",Toast.LENGTH_SHORT).show();
}else {
money--;
tvGetMoney.setText("哈哈,我通过点击鼠标轻易赚了" + money + "元");
}
}
});
}
}

上述代码需要解释的应该是怎么从EditText获取达到一个整数? 答案是通过EditText的getText();

1
2
String strInputMoney = etGoalMoney.getText().toString().trim();
int iMoney = Integer.parseInt(strInputMoney);

通过动手编写代码然后看到运行的效果会不会很有成就感啊?