android学习笔记(5)

来源:互联网 发布:用lededit编程两个不同 编辑:程序博客网 时间:2024/06/07 22:48

intent也可以发短信

Uri uri=Uri.parse(“smsto//00000000000”);

Intent intent=new intent(ACTION_SENDTO,uri);

Intent.puExtra(“smsbody”,”text”);

StartActivity(intent);

常见空间使用

TextView

EditText

Button

Menu四种控件

程序最终实现:

乘法计算

用到的控件有TextView(乘以),两个EditText(文本框),一个Button.一个menu

首先将控件在main.xml中声明

<EditText

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:id="@+id/first"

    />

<TextView 

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:id="@+id/symbol"

    />

<EditText

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:id="@+id/second"

    />

<Button

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:id="@+id/result"

    />

对射申明控件在Actvity03.java中操作

    private EditText first;

    private EditText second;

    private TextView symbol;

    private Button result;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        //取的控件值

        first=(EditText)findViewById(R.id.first);

        second=(EditText)findViewById(R.id.second);

        symbol=(TextView)findViewById(R.id.symbol);

        result=(Button)findViewById(R.id.result);

        /*symbol.setText("乘以");

        result.setText("计算结果是");*/

        symbol.setText(R.string.symbol);

        result.setText(R.string.result);

        result.setOnClickListener(new ResultListener());

}

Activity03复写ResultListner

    class ResultListener implements OnClickListener{

 

       @Override

       public void onClick(View arg0) {

           // TODO Auto-generated method stub

           String firstone=first.getText().toString();

           String secondone=second.getText().toString();

           Intent intent=new Intent();

           intent.putExtra("one", firstone);

           intent.putExtra("two", secondone);

           intent.setClass(Activity03.this, ResultActivity.class);

           Activity03.this.startActivity(intent);

       }

}

对按键响应

新建ResultActivity类对按键响应后操作

public class ResultActivity extends Activity{

    private TextView result1;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

       // TODO Auto-generated method stub

       super.onCreate(savedInstanceState);

       setContentView(R.layout.result);

       result1=(TextView)findViewById(R.id.result1);

       Intent intent=getIntent();

       String first=intent.getStringExtra("one");

       String second=intent.getStringExtra("two");

       int factorone=Integer.parseInt(first);

       int factortwo=Integer.parseInt(second);

       int result=factorone * factortwo;

       result1.setText(result+"");

    }

}

 

回到Activity03在对menu控件操作

    public boolean onCreateOptionsMenu(Menu menu) {

       // TODO Auto-generated method stub

    menu.add(0,1,1,"退出");

    menu.add(0,2,2,"关于");

       return super.onCreateOptionsMenu(menu);

    }

   

    @Override

    public boolean onOptionsItemSelected(MenuItem item) {

       // TODO Auto-generated method stub

       if(item.getItemId()==1)

           finish();

       return super.onOptionsItemSelected(item);

    }

这里有个问题,menu.add(0,1,1,R.string.exit)这条语句会报错,不明白

最后在AndroidMannifest.xml对新的ResultActivity注册

可得最后结果。

结构

其中对intent的操作昨天已经说过,今天主要对EditText,Button,menu控件的学习,以及相应的OnCreateOptionsMenu,OnOptionsItemSeleted的了解