Intent 信使、意圖

站在用戶的角度思考問題,與客戶深入溝通,找到會同網(wǎng)站設(shè)計(jì)與會同網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋會同地區(qū)。
由Intent來協(xié)助Android各個組件之間跳轉(zhuǎn)
1、
startActivity(intent)
包下新建一個類,F(xiàn)Activity.class
public class FActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.factivity);
}
}新建一個XML文件factivity.xml
<Button android:id="@+id/bt1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="First"/> <Button android:id="@+id/bt2" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Second"/> <TextView android:id="@+id/text1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" android:layout_gravity="center" />
同樣在創(chuàng)建第二對class和xml。
在AndroidManiFest中注冊兩個新類,并將默認(rèn)啟動類放在最前:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.bcp.layouttest"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".FActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".SActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
添加按鈕事件:
public class FActivity extends AppCompatActivity {
private Button bt_first;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.factivity);
/***
* 點(diǎn)擊第一個按鈕實(shí)現(xiàn)跳轉(zhuǎn)頁面
*/
bt_first= (Button) findViewById(R.id.bt1);
bt_first.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent();
//第一個:上下文對象
//第二個:目標(biāo)文件
intent.setClass (FActivity.this,SActivity.class);
startActivity(intent);
}
});
}
}2、
startActivityForResult(intent,requestCode);
onActivityResult(int requestCode,int resultCode,Intent data)
setResult(resultCode,data);
查看代碼:
FActivity.java
public class FActivity extends AppCompatActivity {
private Button bt_first;
private Button bt_second;
private TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.factivity);
/***
* 點(diǎn)擊第一個按鈕實(shí)現(xiàn)跳轉(zhuǎn)頁面
*/
bt_first= (Button) findViewById(R.id.bt1);
bt_first.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent();
intent.setClass (FActivity.this,SActivity.class);
startActivity(intent);
}
});
/***
* 通過startActivityForresult實(shí)現(xiàn)
*/
bt_second= (Button) findViewById(R.id.bt2);
bt_second.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent().setClass(FActivity.this,SActivity.class);
/***
* 第二個參數(shù)是請求的標(biāo)示
*/
startActivityForResult(intent,1);
}
});
tv= (TextView) findViewById(R.id.text1);
}
/***
* 通過startActivityForresult實(shí)現(xiàn),接收返回?cái)?shù)據(jù)的方法
* 一、請求的標(biāo)示
* 二、第二個頁面返回的標(biāo)示
* 三、第二個頁面?zhèn)骰氐臄?shù)據(jù)
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//判斷是否滿足條件來進(jìn)行回傳數(shù)據(jù)
if(requestCode==1&&resultCode==2){
String content=data.getStringExtra("intent");
tv.setText(content);
}
}
}SActivity.java
public class SActivity extends AppCompatActivity{
private Button bt;
private String content="Hello~!";
@Override
protected void onCreate( Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sactivity);
/***
* 第二個頁面給第一個頁面回傳數(shù)據(jù)
* 回傳給第一個頁面的實(shí)際上是一個intent對象
*/
bt= (Button) findViewById(R.id.bt3);
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent();
//創(chuàng)建回傳對象
intent.putExtra("intent",content);
setResult(2,intent);
//結(jié)束當(dāng)前頁面
finish();
}
});
}
}App的簽名和打包:
1、為了保證每個應(yīng)用開發(fā)者的合法。
2、防止別人通過相同的Package Name來混淆替換已經(jīng)安裝的程序,從而出現(xiàn)一些惡意篡改
3、保證我們每次發(fā)布的版本的一致性(如自動更新不會因?yàn)榘姹静灰粯佣鵁o法安裝)
分享名稱:Android中使用Intent實(shí)現(xiàn)界面跳轉(zhuǎn)
分享路徑:http://chinadenli.net/article12/ggpsgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、小程序開發(fā)、品牌網(wǎng)站設(shè)計(jì)、建站公司、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)