Android Intent 에서 페이지 전환 을 실현 하 는 두 가지 방법

본 논문 의 사례 는 Intent 가 페이지 전환 을 실현 하 는 두 가지 방법 을 공유 하여 여러분 께 참고 하 시기 바 랍 니 다.구체 적 인 내용 은 다음 과 같 습 니 다.

아래 그림 에서 두 가지 다른 방법 은 바로 두 페이지 사 이 를 뛰 어 넘 는 상황 이다.
1).데 이 터 를 되 돌려 주지 않 고 건 너 뛰 기
2).데 이 터 를 되 돌려 줍 니 다.

실례:
첫 번 째 시작 방식(데 이 터 를 되 돌려 주지 않 음)
두 번 째 시작 방식(데 이 터 를 되 돌려 줍 니 다)
첫 번 째 종류 먼저 보기:

첫 번 째 시작 방식 단 추 를 누 르 면 오른쪽 그림 이 나타 나 고 Button 단 추 를 누 르 면 왼쪽 화면 으로 돌아 갑 니 다.TextView 의 내용 은 변 하지 않 았 습 니 다.
두 번 째 시동 방식 을 보 겠 습 니 다.
다른 것 은 Button 단 추 를 누 르 면 왼쪽 화면 으로 돌아 가 TextView 의 내용 이 안녕하세요 가 되 었 습 니 다.

다음은 모든 코드 입 니 다.
AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.example.lenovo.intent">

  <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">

    </activity>
    <activity android:name="com.example.lenovo.intent.firstactivity">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
    <activity android:name="com.example.lenovo.intent.Secondactivity">

    </activity>
  </application>

</manifest>

factivity

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical"
  >

  <Button
    android:id="@+id/bt1__first"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="       " />

  <Button
    android:id="@+id/bt2__second"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="       " />

  <TextView
    android:id="@+id/textView1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="               " />

</LinearLayout>
sactivity

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent">

  <Button
    android:id="@+id/button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:text="Button" />
</LinearLayout>
firstactivity.java

package com.example.lenovo.intent; 
 
import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
import android.widget.TextView; 
 
/** 
 * Created by lenovo on 2018/2/27. 
 */ 
 
public class firstactivity extends Activity { 
  private Button bt1; 
  private Button bt2; 
  private TextView tv; 
  @Override 
  protected void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.factivity); 
 
    /* 
          bt1          
      1.  startActivity       
      1>  Intent(  ) 
     */ 
 
 
    bt1=(Button) findViewById(R.id.bt1__first); 
    bt2=(Button)findViewById(R.id.bt2__second); 
    tv=(TextView) findViewById(R.id.textView1); 
    // bt1       
    bt1.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
        /* 
             :     this 
             :     
         */ 
        Intent intent = new Intent(firstactivity.this,Secondactivity.class); 
        startActivity(intent); 
 
      } 
    }); 
 
    /* 
    2.  startActivityForResult       
     */ 
    // bt2       
    bt2.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
        Intent intent = new Intent(firstactivity.this,Secondactivity.class); 
 
        /* 
             :Intent   
             :        
         */ 
        startActivityForResult(intent,1); 
      } 
    }); 
  } 
 
  /* 
    startActivityForResult             
  requestCode:     ,               ,                  
  resultCode:     setResult(int resultCode,Intent data)     ,                
   */ 
  @Override 
  protected void onActivityResult(int requestCode,int resultCode ,Intent data){ 
    super.onActivityResult(requestCode,resultCode,data); 
    if(requestCode==1&&resultCode==2){//     1&&    2       
      String content=data.getStringExtra("data"); 
      tv.setText(content); 
    } 
  } 
} 
Secondactivity.java

package com.example.lenovo.intent; 
 
import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 
 
/** 
 * Created by lenovo on 2018/2/27. 
 */ 
 
public class Secondactivity extends Activity { 
 private Button bt; 
 String content="  ";//       
 @Override 
 protected void onCreate( Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.sactivity); 
 
  /* 
                      
                 Intent   
   */ 
  bt=(Button) findViewById(R.id.button); 
  bt.setOnClickListener(new View.OnClickListener() { 
   @Override 
   public void onClick(View view) { 
    Intent data = new Intent(); 
    //name     key,content       
    data.putExtra("data",content); 
    //resultCode    ,              ,        2 
    //        ,         setResult(int resultCode,Intent data) 
    setResult(2,data); 
    //       
    finish(); 
   } 
  }); 
 } 
} 
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기