Android 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();
}
});
}
}
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.