一、Android的常用控件
Android常用的控件有TextView、EditText、Button、Menu,下面将使用一个乘法计算器的例子来说明这几种常用控件的使用。
二、计算器功能界面
1.计算界面
2.输入界面
3.结果界面
三、代码
1.目录结构:
2.代码
Activity03.java
package com.android.activity; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class Activity03 extends Activity { private EditText factorOne = null; //被乘数 private TextView symbol = null; //符号 private EditText factorTwo = null; //乘数 private Button calculate = null; //计算按钮 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); factorOne = (EditText)findViewById(R.id.factorOne); factorTwo = (EditText)findViewById(R.id.factorTwo); symbol = (TextView)findViewById(R.id.symbol); calculate = (Button)findViewById(R.id.calculate); symbol.setText(R.string.symbol); calculate.setText(R.string.calculate); calculate.setOnClickListener(new MyButtonListener()); } @Override public boolean onCreateOptionsMenu(Menu menu) { menu.add(0,1,1,R.string.exit); menu.add(0,2,2,R.string.about); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { if(item.getItemId() == 1){ finish(); } return super.onOptionsItemSelected(item); } class MyButtonListener implements OnClickListener{ public void onClick(View v) { String factorOneStr = factorOne.getText().toString(); String factorTwoStr = factorTwo.getText().toString(); Intent intent = new Intent(); intent.putExtra("one", factorOneStr); intent.putExtra("two", factorTwoStr); intent.setClass(Activity03.this, ResultActivity.class); Activity03.this.startActivity(intent); } } }
main.xml——Activity03布局文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <EditText android:id="@+id/factorOne" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <TextView android:id="@+id/symbol" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <EditText android:id="@+id/factorTwo" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Button android:id="@+id/calculate" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
string.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, Activity03!</string> <string name="app_name">Activity测试03</string> <string name="symbol">乘以</string> <string name="calculate">计算</string> <string name="result">结果</string> <string name="exit">退出</string> <string name="about">关于</string> </resources>
ResultActivity.java——结果显示
package com.android.activity; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.widget.TextView; public class ResultActivity extends Activity{ private TextView resultText = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.result); Intent intent = getIntent(); String factorOne = intent.getStringExtra("one"); String factorTwo = intent.getStringExtra("two"); int resultTemp = Integer.parseInt(factorOne)*Integer.parseInt(factorTwo); System.out.println("-----dfss--------"+resultTemp); String result = resultTemp+""; resultText = (TextView)findViewById(R.id.result); resultText.setText(result); } }
result.xml——ResultActivity布局文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:id="@+id/result" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
完成!