如何在android中进行单个活动来处理许多活动?

时间:2013-10-27 10:50:32

标签: android android-layout android-fragmentactivity

我正在制作一个包含200多个按钮的Android应用程序............ 每个按钮响应一个活动...........每个活动包含一个按钮,文本视图和图像............ 有没有任何简短的方法,以便我可以摆脱这些活动,并有一个按钮和图像的单一活动。当我将点击一个按钮,然后它显示我相应的图像与该单一活动中的按钮。 我的主要活动包含两个名为Urdu和英语的按钮...........

<?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种不同的活动......我真的不想要。

当用户触摸任何按钮然后...然后将显示具有尊重图像和按钮的该活动。 对不起我的英文.................

3 个答案:

答案 0 :(得分:0)

您应该使用Intents并将一些参数传递给Intent中的Activity。您可以传递图像ID,然后在“活动”中阅读它并决定要显示的图像。

take a look here.

答案 1 :(得分:0)

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

答案 2 :(得分:0)

创建单个活动并在运行时为该活动生成视图。通过这种方式,您可能需要编写200个条件,但实际上您将为200个活动保存代码。