分享

Android开发笔记(四)— 对控件的简单操作

 openwudi 2010-10-08

此例为了实现显示两个int类型的数字的乘积
分析思路:
1、需要2个输入字符的控件,这里我们使用EditText。
2、1个TextView控件,用来显示乘法两个字。
3、1个Button按钮控件,并且需要在按钮上绑定监听器,操作取出EditText的值。
4、建立一个Intent对象,把取出的两个EditText的值存入Intent对象。
5、把Intent对象传入第一个新的Activty,用来显示相乘的结果。

代码如下:
Main.java

package dan.calculate;

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 Main extends Activity {
    /** Called when the activity is first created. */
EditText factorOne = null;
EditText factorTwo = null;
TextView symbol = null;
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 CalculateListener());
    }

    @Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
    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) {
// TODO Auto-generated method stub
if(item.getItemId()==1){
finish();
}
return super.onOptionsItemSelected(item);
}

class CalculateListener implements OnClickListener{

@Override
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(Main.this, Result.class);
Main.this.startActivity(intent);
}

    }
}


Result.java
package dan.calculate;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;

public class Result extends Activity{
TextView resultView;
@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 result = Integer.parseInt(factorOne)*Integer.parseInt(factorTwo);
resultView = (TextView) findViewById(R.id.result);
resultView.setText(result+"");
}

}


main.xml
<linearlayout xmlns:android="http://schemas./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">
</button></edittext>
</textview></edittext></linearlayout>


result.xml
<linearlayout xmlns:android="http://schemas./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">
</textview>

</linearlayout>

string.xml
<resources>
<string name="hello">Hello World, Main!</string>
<string name="app_name">Calculate</string>
<string name="result">结果</string>
<string name="symbol">乘以</string>
<string name="calculate">计算</string>
<string name="exit">退出</string>
<string name="about">关于</string>
</resources>


AndroidManifest.xml
<manifest xmlns:android="http://schemas./apk/res/android" package="dan.calculate" android:versioncode="1" android:versionname="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Main" android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN">
                <category android:name="android.intent.category.LAUNCHER">
            </category>
        </action>

    <activity android:name=".Result" android:label="@string/result">
    </activity>
</intent-filter>
    <uses-sdk android:minsdkversion="8">

</uses-sdk>
</activity></application></manifest>

实现效果如下:


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多