Android intent 隱式用法
阿新 • • 發佈:2018-11-17
通過隱式用法從MainActivity跳轉到SecondActivity
manifests
<activity android:name=".Next"> <intent-filter> <category android:name="android.intent.category.DEFAULT"></category> <action android:name="com.example.a18484.text.intent"></action> //here </intent-filter> </activity>
這時Main的intent方法則通過查詢here行程式碼內name的值來確定啟動的活動
SecondActivity
public class SecondActivity extends AppCompatActivity { public static final String name = "com.example.a18484.text.intent"; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_next); } }
在第二行,為了方便起見,將配置檔案中的資訊用name表示
MainActivity
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(SecondActivity.name)); } }); } }
隱式用法不用向new Intent()內傳入兩個活動,取而代之的是搜尋配置檔案與SecondActivity.name值相同的Activity(在本文中是SecondActivity)