zoukankan      html  css  js  c++  java
  • Android界面之间的跳转和返回

         最近才算是真正的接触android的东西,这是今天学习到的一点东西。有点小兴奋。想写点东西来当作将来的回忆。同时也想各位博友分享下,互相学习和指导!
        打开Eclipse,选择file->new->android application project->新建AndroidApp。
        在AndroidApp—>res->Layout->activity_main.xml 添加一个Button
        在AndroidApp包下新建一个类NewApp,同时在Layout中新建一个activity_newapp.xml,添加一个按钮。 
    两个界面设计如下:
     
    在androidmanifest.xml中添加代码如下:
    <activity android:name="com.wxy.androidapp.NewApp" ></activity>
    好了,基本步骤完成。下面开始进入代码:
    第一个界面代码如下:

    package com.wxy.androidapp;

    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Intent;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;

    public class MainActivity extends Activity {
    final static int REQUEST=10;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //findViewById 指定的ID 必须存在于当前布局文件 ID 所对应的控件 和我们 声明 的控件类型一致
    setContentView(R.layout.activity_main);
    btn1=(Button) findViewById(R.id.button1);
    // 对按钮添加点击事件的监听
    btn1.setOnClickListener(click);
    }
    Button btn1;
    //点击事件监听对象
    OnClickListener click=new OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    //转跳到第二个页面
    Intent it=new Intent(MainActivity.this, NewApp.class);
    //startActivity(it);
    startActivityForResult(it,REQUEST);
    }
    };
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    //requestcode 区别发出请求用意
    if(requestCode==REQUEST){//第二个页面返回来的数据
    //resultcode 区分结果是否属于正常返回
    if(resultCode==RESULT_OK){
    //操作成功
    }else if(resultCode==RESULT_CANCELED){
    //操作失败
    }

    }
    };
    @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;
    }

    }

    第二个界面的代码:

    package com.wxy.androidapp;

    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.webkit.WebView.FindListener;
    import android.widget.Button;
    import android.widget.TextView;

    public class NewApp extends Activity {
    //声明控件
    Button btn2;
    TextView tv;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    //加载布局
    setContentView(R.layout.activity_newapp);
    super.onCreate(savedInstanceState);
    //初始化控件
    btn2=(Button) findViewById(R.id.button1);
    tv=(TextView) findViewById(R.id.textView1);
    tv.setText("欢迎进入第二页");
    //设置侦听器,添加事件
    btn2.setOnClickListener(onclick);


    }//构造类部内
    OnClickListener onclick=new OnClickListener() {

    @Override
    public void onClick(View v) {
    // TODO Auto-generated method stub
    Intent in=getIntent();
    //设置返回结果成功
    setResult(RESULT_OK, in);
    //关闭当前activity
    finish();
    }
    };

    }

    实现界面跳转如下:

    当单击点击跳转到第二个页面,单击返回回到第一界面。

    注意:在导入OnClickListener时要导入view下面的包。

    在创建第二个类NewApp时要在继承Android.app.Activity下的Activity。

     
  • 相关阅读:
    Resource和Autowired区别
    mybatisplus 分页查询+ dao层抽象
    Error attempting to get column from result set
    第一模块经济学核心原理,第一模块经济学核心原理
    springboot 优雅的启动类
    maven把依赖打进jar包
    第一章:第1课 经济学世界观(上)
    AutomicBoolean
    java异步转同步
    接口作为方法的返回值
  • 原文地址:https://www.cnblogs.com/wxyi/p/3413228.html
Copyright © 2011-2022 走看看