gpt4 book ai didi

java - OnClick在其他JAVA文件Android中加载数组

转载 作者:行者123 更新时间:2023-12-01 13:29:16 25 4
gpt4 key购买 nike

我正忙着用 java 和 xml 制作一个 android 应用程序。这是一种益智游戏,有点类似于数独。

所以我有一个 ScrollView ,里面有一个表格布局。我的表行比此代码中的多,但也没有必要显示它们。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/wallpaper"
>

<TableLayout

android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="*"
>

<TableRow
android:id="@+id/tableRow1"
android:layout_width="fill_parent"
android:minHeight="50dp"
android:background="@drawable/cell_shape"

>

<TextView
android:textColor="@color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/game1"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_gravity="center"

/>

<TextView
android:textColor="@color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/yes"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge" />

</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="fill_parent"
android:minHeight="50dp"
android:background="@drawable/cell_shape"
>

<TextView
android:textColor="@color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/game2"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_gravity="center"

/>

<TextView
android:textColor="@color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/yes"
android:layout_gravity="center"
android:textAppearance="?android:attr/textAppearanceLarge" />

</TableRow>
</TableLayout>
</ScrollView>

如果我单击表格行,我会使用此代码进入其他 Activity 。

TableRow game1 = (TableRow) findViewById(R.id.tableRow1);
game1.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent myIntent = new Intent(view.getContext(), Game1.class);
startActivityForResult(myIntent, 0);
}

});
TableRow game2 = (TableRow) findViewById(R.id.tableRow2);
game2.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent myIntent = new Intent(view.getContext(), Game2.class);
startActivityForResult(myIntent, 0);
}

});

现在我为每个游戏都有一个其他 Activity ,但游戏之间的唯一区别是一些数组。所以我想做的是,当我单击 TableRow 时,我想更改其他 java 文件中某些数组的值。因此,我不必为每个游戏创建一个 Activity ,而只需为一个具有变化值的 Activity 。

对于 game1,我想在 games.java 文件中设置这些数组:

int firstrow[] = { 2,  1, 2, 0} ;       
int secondrow[] = { 2, 2, 1, 2} ;
int thirdrow[] = { 2, 0, 0, 2} ;
int fourthrow[] = { 1, 2, 2, 2} ;
int firstrowanswer[] = { 0, 1, 1, 0} ;
int secondrowanswer[] = { 0, 0, 1, 1} ;
int thirdrowanswer [] = { 1, 0, 0, 1} ;
int fourthrowanswer[] = { 1, 1, 0, 0} ;

以游戏2为例

int firstrow[] = { 2,  0, 2, 1} ;       
int secondrow[] = { 2, 0, 2, 2} ;
int thirdrow[] = { 0, 2, 2, 1} ;
int fourthrow[] = { 0, 2, 2, 2} ;
int firstrowanswer[] = { 1, 0, 0, 1} ;
int secondrowanswer[] = { 1, 0, 1, 0} ;
int thirdrowanswer [] = { 0, 1, 0, 1} ;
int fourthrowanswer[] = { 0, 1, 1, 0} ;

如何通过单击表格行来设置其他文件中数组的值?

最佳答案

为什么不将这些数组作为 Intent extra 传递?

Intent gameActivity = new Intent(this, GameActivity.class);
gameActivity.putExtra("firstRow", arrayForFirstRow);
gameActivity.putExtra("secondRow", arrayForSecondRow);
...
startActivity(gameActivity);

关于java - OnClick在其他JAVA文件Android中加载数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21659507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com