0

我正在制作一个包含 200 多个按钮的 android 应用程序............每个按钮都响应一个活动............每个活动都包含一个按钮、文本视图和图像............有没有什么捷径可以让我摆脱这些许多活动并拥有一个带有按钮和图像的单一活动。当我单击一个按钮时,它会显示我在该单个活动中带有按钮的相应图像。我的主要活动包含两个名为乌尔都语和英语的按钮............

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/main_first_background"
    android:gravity="center"
    android:orientation="vertical" >

<Button
    android:id="@+id/urduForLang"
    android:layout_width="200dp"
    android:layout_height="80dp"
    android:layout_gravity="center"
    android:text="URDU"
    android:textColor="@android:color/background_light" >
</Button>

<Button
    android:id="@+id/EnglishForLang"
    android:layout_width="200sp"
    android:layout_height="80dp"
    android:layout_below="@+id/urduForLang"
    android:layout_gravity="center"
    android:layout_marginTop="2dp"
    android:text="English"
    android:textColor="@android:color/background_light" >
</Button>
</RelativeLayout>

当用户单击 urdu 时,它会打开一个包含 99 个按钮的活动,当单击英语时,它会打开一个具有相同英文按钮的活动。所以我必须进行 99 种不同的活动……我真的不想要。

当用户触摸任何按钮时......然后将显示带有相应图像和按钮的活动。对不起我的英语不好.................

4

3 回答 3

0

您应该使用Intents,但是如果您可以创建一个根据其参数执行不同操作的 Activity,它可能会更有用。这样,您可以在 Intent 对象中使用设置参数,Intent.putExtra(...)然后在已调用的 Activity 中使用getIntent().getExtras(). 请注意,该方法getExtras()返回一个 Bundle 对象,因此您需要从该对象中单独提取您从主活动发送的所有值。祝你好运!

于 2013-10-27T10:58:00.793 回答
0

创建单个活动并在运行时为该活动生成视图。这样,您可能需要编写 200 个条件,但实际上您将节省 200 个活动的代码。

于 2013-10-27T10:58:32.603 回答
0

您应该使用 Intents 并将一些参数传递给 Intent 中的 Activity。您可以传递您的图像 id,然后在 Activity 中读取它并决定要显示哪个图像。

请看这里。

于 2013-10-27T10:54:56.940 回答