如何在Android中为不同的内容使用相同的Activity?

时间:2016-06-05 11:13:25

标签: android user-interface android-linearlayout

考虑我正在为我的应用程序使用线性布局     

 <TextView
    android:text="product 1"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textColor="@android:color/white"
    android:textSize="54sp"
    android:background="#009611" />

<TextView
    android:text="product 2"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textColor="@android:color/white"
    android:textSize="54sp"
    android:background="#123431" />

<TextView
    android:text="product 3"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:textColor="@android:color/white"
    android:textSize="54sp"
    android:background="#009688" />
</LinearLayout>

我的输出是:

akash preet sample output

当我选择 product1 时,应该打开 product1_des 活动
当我选择 product2 时,应该打开 product2_des 活动
当我选择 product3 时,应该打开 product3_des 活动
并继续..

我有1000个产品应该创建1000个活动吗? 如何使用 product_des 活动(即单个活动)来支持我的1000个产品以及与该产品相关的不同描述? 请帮帮我。

1 个答案:

答案 0 :(得分:4)

  

我有1000个产品应该创建1000个活动吗?如何使用product_des活动(即单个活动)来支持我的1000个产品以及与该产品相关的不同描述?请帮帮我。

NO !!!

您可以创建Activity,例如ProductDetail,但只有一个,然后您想要显示产品详细信息的任何地方都可以使用putExtras()

Intent intent = new Intent(this, ProductDetail.class);
intent.putExtra("productName", ProductName);
startActivity(intent);

ProductDetail中,您可以使用Bundle

获取产品名称
Bundle b = new Bundle();
b = getIntent().getExtras();
String name = b.getString("productName");