Android Studio 使用Intent


1.顯式Intent

  Intent intent=new Intent(yzj.this,MainActivity.class);//當前活動的實例,要去的實例
                startActivity(intent);//注入下一個活動

2.隱式Intent

    Intent intent=new Intent("A");
                intent.addCategory("B"); 
 <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="A" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="B" />
            </intent-filter>
        </activity>

代碼要添加篩選 確認那個活動可以進那個活動 

隱式的調用系統瀏覽器

 Intent intent=new Intent(Intent.ACTION_VIEW);
                intent.setData(Uri.parse("http://www.baidu.com"));

隱式的調用電話簿

 Intent intent=new Intent(Intent.ACTION_DIAL);//內置對象
                intent.setData(Uri.parse("TEL:10000"));

向下一層傳遞接收數據

   intent.putExtra("h","123");//向下一層傳遞數據
    Intent te=getIntent();//獲取傳入的值 object 類型 在首次加載地方寫入
                String data=intent.getStringExtra("h");//獲取鍵值 感覺類型用不同的類型去接受

返回數據給上一次 要在 上一層 重寫onActivityResuly()

在返回是銷毀頁面

   startActivityForResult(intent,1); 返回對象 標識位1
  @Override
    public void onBackPressed() {
             Intent intent=new Intent();
             intent.putExtra("","");//存入值
             setResult(RESULT_OK,intent);
             finish();//銷毀
    }
 @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {

        if (requestCode==1)
        {
            if (resultCode==RESULT_OK)
            {
                String resturn=data.getStringExtra("123"); //獲取值
            }
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM