使用ToggleButton将数据发送到Button Click上的另一个活动

时间:2017-07-10 16:42:30

标签: java android android-layout

我正在开发一个项目,我想要一组togglebuttons将数据发送到android中的另一个活动。

我希望togglebuttons根据点击的数据将数据发送到另一个活动。这是xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_start2"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.brillica.vapid.Start2">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Example"
    android:textSize="20sp"
    android:textColor="#000"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="19dp"
    android:id="@+id/question" />

<ToggleButton
    android:textOff="Sports"
    android:textOn="Sports"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="88dp"
    android:id="@+id/sports"
    android:layout_below="@+id/question"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:textColor="#fff"
    android:background="#DDA388"/>

<ToggleButton
    android:textOff="Science"
    android:textOn="Science"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/science"
    android:textColor="#fff"
    android:background="#DDA388"
    android:layout_alignBaseline="@+id/sports"
    android:layout_alignBottom="@+id/sports"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true" />

<ToggleButton
    android:textOff="Art"
    android:textOn="Art"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/art"
    android:textColor="#fff"
    android:background="#DDA388"
    android:layout_alignBaseline="@+id/science"
    android:layout_alignBottom="@+id/science"
    android:layout_centerHorizontal="true" />

<ToggleButton
    android:textOff="Entertainment"
    android:textOn="Entertainment"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:id="@+id/entertainment"
    android:textColor="#fff"
    android:background="#DDA388"
    android:layout_centerVertical="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<ToggleButton
    android:textOff="Crafting"
    android:textOn="Crafting"
    android:layout_width="120dp"
    android:layout_height="wrap_content"
    android:id="@+id/reading"
    android:textColor="#fff"
    android:background="#DDA388"
    android:layout_alignBaseline="@+id/entertainment"
    android:layout_alignBottom="@+id/entertainment"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true" />

<ToggleButton
    android:textOff="Farming"
    android:textOn="Farming"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/farming"
    android:textColor="#fff"
    android:background="#DDA388"
    android:layout_alignBaseline="@+id/reading"
    android:layout_alignBottom="@+id/reading"
    android:layout_alignLeft="@+id/art"
    android:layout_alignStart="@+id/art" />


<Button
    android:layout_width="150dp"
    android:layout_height="wrap_content"
    android:layout_marginTop="65dp"
    android:id="@+id/next"
    android:background="#DDA388"
    android:text="Continue"
    android:textColor="#fff"
    android:onClick="next"
    android:layout_below="@+id/entertainment"
    android:layout_centerHorizontal="true" />

例如,如果点击togglebutton science和togglebutton art,我希望另一个活动中的文本更改为&#34; Art and Science&#34;单击下一个按钮,如果单独单击艺术,我希望TextView显示下一个艺术按钮。

我是编程新手,所以我不熟悉代码。

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您应该使用Intent调用新活动。

您可以添加附加内容以在活动之间传递数据。

mIntent.putExtra("sciencebutton", scbutton.isChecked());

您可以通过以下方式以编程方式获取按钮:

ToggleButton scbutton = findViewById(R.id.science);

在第二项活动中:

boolean isScienceButtonChecked = getIntent().getBooleanExtra("sciencebutton");

将返回您在第一个活动中传递的值(在这种情况下,是否检查了科学按钮)