活动在同一活动中开始产品详细信息(不要这样)

时间:2015-12-21 17:02:47

标签: android android-activity

我试图在不同的活动中显示产品详细信息,因此用户可以按住(不需要返回主屏幕多个产品打开并轻松切换顺便点击)然后使用Android任务管理器(最近的应用程序):

我想要什么:

enter image description here

我有什么:

enter image description here

我使用的代码:

的AndroidManifest.xml:

     <activity
android:launchMode="singleTop"
            android:taskAffinity="" // must use this or it create just one activity for the application and open the second activity in top of main activity
                android:name=".Activities.ListActivity"
                android:configChanges="orientation|screenSize"
                android:label="Produt List"
                android:theme="@style/NoActionBar"/>


     <activity
                android:name=".Activities.DetailsActivity"
                android:configChanges="orientation|screenSize"
                android:label="Produt Details"
                android:theme="@style/NoActionBar"/>

我如何打开ActivityDetails:

Intent i = new Intent(this, ActivityDetails.class);
i.putExtra("productID", product.getId());

        i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); //must add for BOTH
i.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); //must add for both

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){

i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //for new task
i.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT); //must add for lollipop

}
else{
    i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
}
startActivity(i);

对于Android Lollipop它正在工作,因为NEW_DOCUMENT(如果我删除它,它也停止为棒棒糖工作),但对于api&lt; api21,它不工作= /,只创建ActivityDetails的实例,并在同一个活动中打开所有产品。相反,我想要新的活动(多个副本显示不同的产品)。

尝试使用此信息:http://inthecheesefactory.com/blog/understand-android-activity-launchmode/en

0 个答案:

没有答案