当前位置: 代码迷 >> Android >> Android札记(4)-常用控件(一)
  详细解决方案

Android札记(4)-常用控件(一)

热度:29   发布时间:2016-05-01 10:17:39.0
Android笔记(4)---常用控件(一)

?

常用控件:

---------------------

  1. TextView
  2. EditView
  3. Menu
  4. Button

?

例子:Activity003

---------------------

MainActivity.java

package com.example.activity003;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 MainActivity extends Activity {    private EditText num1Et;    private EditText num2Et;    private int num1;    private int num2;    private int result;    private TextView menuStatusTv;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        num1Et = (EditText) this.findViewById(R.id.num1);        num2Et = (EditText) this.findViewById(R.id.num2);        TextView operationTv = (TextView) this.findViewById(R.id.operation);        Button calcBut = (Button) this.findViewById(R.id.calc);        menuStatusTv = (TextView) this.findViewById(R.id.menuStatus);        menuStatusTv.setText("菜单未选择");        operationTv.setText(R.string.operation);        calcBut.setText("计算");        // 以匿名类的方式为按钮添加监听        calcBut.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View view) {                String num1Str = num1Et.getText().toString();                String num2Str = num2Et.getText().toString();                try {                    num1 = Integer.parseInt(num1Str);                } catch (NumberFormatException e) {                    num1 = 0;                }                try {                    num2 = Integer.parseInt(num2Str);                } catch (NumberFormatException e) {                    num2 = 0;                }                // 计算                result = num1 * num2;                // 将计算结果传递到ResultActivity中                Intent intent = new Intent();                intent.putExtra("result", num1 + " * " + num2 + " = " + result);                intent.setClass(MainActivity.this, ResultActivity.class);                MainActivity.this.startActivity(intent);            }        });    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        // getMenuInflater().inflate(R.menu.main, menu);        int group1 = 1;        int group2 = 2;        menu.add(group1, 11, 1, "About1");        menu.add(group1, 12, 2, "Exit1");        menu.add(group2, 21, 3, "About2");        menu.add(group2, 22, 4, "Exit2");        return true;    }    @Override    public boolean onOptionsItemSelected(MenuItem item) {        menuStatusTv.setText("您选择了 " + item.getTitle());        switch (item.getItemId()) {            case 11:                // do nothing                break;            case 12:                finish();                break;            case 21:                // do nothing                break;            case 22:                // do nothing                break;        }        return super.onContextItemSelected(item);    }}

?ResultActivity.java

package com.example.activity003;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;public class ResultActivity extends Activity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_result);        TextView resultTv = (TextView) this.findViewById(R.id.result);        Button backBut = (Button) this.findViewById(R.id.back);        // 获取处理结果        Intent intent = this.getIntent();        String result = intent.getStringExtra("result");        resultTv.setText(result);        backBut.setText("返回");        backBut.setOnClickListener(new OnClickListener() {            @Override            public void onClick(View view) {                Intent intent = new Intent();                intent.setClass(ResultActivity.this, MainActivity.class);                ResultActivity.this.startActivity(intent);            }        });    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.main, menu);        return true;    }}

?res/layout/activity_main.xml

<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:orientation="vertical"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >    <TextView        android:id="@+id/menuStatus"        android:layout_width="fill_parent"        android:layout_height="wrap_content" />    <EditText        android:id="@+id/num1"        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:inputType="number" />    <TextView        android:id="@+id/operation"        android:layout_width="fill_parent"        android:layout_height="wrap_content" />    <EditText        android:id="@+id/num2"        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:inputType="number" />    <Button        android:id="@+id/calc"        android:layout_width="fill_parent"        android:layout_height="wrap_content" /></LinearLayout>

?res/layout/activity_result.xml

<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:orientation="vertical"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >    <TextView        android:id="@+id/result"        android:layout_width="fill_parent"        android:layout_height="wrap_content" />    <Button        android:id="@+id/back"        android:layout_width="fill_parent"        android:layout_height="wrap_content" /></LinearLayout>

?res/values/strings.xml

<?xml version="1.0" encoding="utf-8"?><resources>    <string name="app_name">Activity003</string>    <string name="action_settings">Settings</string>    <string name="hello_world">Hello world!</string>    <string name="operation">乘以</string>    <string name="activity_result">计算结果</string></resources>

?AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.example.activity003"    android:versionCode="1"    android:versionName="1.0" >    <uses-sdk        android:minSdkVersion="8"        android:targetSdkVersion="9" />    <application        android:allowBackup="true"        android:icon="@drawable/ic_launcher"        android:label="@string/app_name"        android:theme="@style/AppTheme" >        <activity            android:name="com.example.activity003.MainActivity"            android:label="@string/app_name" >            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>        <activity            android:name=".ResultActivity"            android:label="@string/activity_result" >        </activity>    </application></manifest>

?

?

运行结果:

--------------------------




?
?

?

?

?

  相关解决方案