Android studio界面跳转学习笔记

Android studio跳转界面两种方法(跳进+跳回
首先设置两个Activity
主界面Mainactivity 二界面Secondactivity
如果要实现界面跳转功能,要在button上设置监听器效果
首先考虑跳进功能 在Mainactivity中的xml文件设置对应button(id:bt1)
然后在其java文件中做以下设置:

public class Mainactivty extends AppCompatActivity  {
 
  @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button btn1 = findViewById(R.id.btn1);
        btn1.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(MainActivity.this,SecondActivity.class);
                startActivity(intent);

            }


        });
    }
}

这样就好啦!!!

然后呢,就到了回马枪情节,要从第二个界面到都一个界面去
正常的话呢,我只要把上面的代码复制粘贴到这,只进行专门位置的更改就可以了
像这样

public class Secondactivty extends AppCompatActivity  {
 
   @Overide
   protected void onCreate(Bundle savedInstanceState){
   super.oncreate(saveInstanceState);
   setContentView(R.layout.activity_***second***);
   Button bt2=findViewById(R.id.bt2)//首先识别对应button
   bt2.setOnclickListener((view){
      Intent intent=new Intent(Secondactivity.this,Mainactivity.class);
      startActivity(intent);
      });
     } 
  }`

完全行得通啊!
但是除此之外还有一个办法
可以直接在外面做一个类的继承

public class Secondactivty extends AppCompatActivity   implements  View.OnClickListener  {
........
........
bt2.setOnClickListener(this);
}
@Override
public void onClick(view view){
}
}

把监听对象直接改为this,即当前activity,一样阔以。

补充1:

Android模拟机点击按钮出现App闪退问题

如果分别创建SecondActivity和对应xml文件,即使其关系合理对应,模拟运行时仍会出现崩溃问题,原因是没有在Manifest里面注册SecondActivity

<activity android:name=".SecondActivity" />

不手动的话,可以在需要被注册的Activity那一行点击左边小灯泡,敲击Alt+Enter快捷键之后,选择
add activity to maniefest。这样做就可以快捷地在AndroidManifest.xml中注册该Activity了
如此即可

补充2:

单个App界面有多个按钮响应时的处理方法

考虑到用户的使用便捷性,在编写App时我们尽可能的在一个页面内增加尽量多的界面转移按钮Button
此时可以用switch方法对view进行筛选,得到被点击的Button的响应。

public class SecondActivity extends AppCompatActivity {
   Intent a,b;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
        Button btn2 = findViewById(R.id.btn2);
        btn2.setOnClickListener(new ButtonListener());
        Button btn5 = findViewById(R.id.btn5);
        btn5.setOnClickListener(new ButtonListener());
    }
    class ButtonListener implements View.OnClickListener{

        Intent a,b;
        @Override
        public void onClick(View view) {
            switch(view.getId()){
                    case R.id.btn2:
                    a = new Intent(SecondActivity.this,MainActivity.class);
                    startActivity( a );
                    break;
                    case R.id.btn5:
                    b = new Intent(SecondActivity.this,ThirdActivity.class);
                    startActivity( b );
                    break;
            }
        }


    }



}

你可能感兴趣的:(学习)