Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何编写一个Android方法,在3个不同的文本视图中显示同一行的3列?_Java_Android_Database - Fatal编程技术网

Java 如何编写一个Android方法,在3个不同的文本视图中显示同一行的3列?

Java 如何编写一个Android方法,在3个不同的文本视图中显示同一行的3列?,java,android,database,Java,Android,Database,我不熟悉安卓系统。我试图编写一个方法,在3个不同的文本视图中显示数据库同一行中的3个不同列。现在,我有3个相同的方法,每个方法显示同一行中的不同列: Display part of Method #1: if (cursor != null){ cursor.moveToFirst(); result = result + cursor.getString(0); return result; } r

我不熟悉安卓系统。我试图编写一个方法,在3个不同的文本视图中显示数据库同一行中的3个不同列。现在,我有3个相同的方法,每个方法显示同一行中的不同列:

        Display part of Method #1:
if (cursor != null){
        cursor.moveToFirst();
        result = result
        + cursor.getString(0);
        return result;
    }
    return null;


    Display part of Method #2:
if (cursor != null){
        cursor.moveToFirst();
        result = result
        + cursor.getString(1);
        return result;
    }
    return null;

    Display part of Method #3:
if (cursor != null){
        cursor.moveToFirst();
        result = result
        + cursor.getString(2);
        return result;
    }
    return null;

所以我的问题是:有没有一种方法可以编写一个方法,其中的结果类似于“对于单个DB行,cursor.getString(0);在TextView中显示1,cursor.getString(1);在TextView中显示2,cursor.getString(2);在TextView中显示3?”

在TextView中使用字符串生成器和“\n”字符。或者只有3个文本视图。

在文本视图中使用字符串生成器和“\n”字符。或者只有3个文本视图

if (cursor != null){
    cursor.moveToFirst();
    String string1 = cursor.getString(0);
    .... string2 = cursor.getString(1);
    .... string3 = cursor.getString(2);
    textView1.setText(string1);
    textView2.setText(string2);
    textView3.setText(string3);
}
对于数据库适配器,您可以做一件事

if (cursor != null){
    cursor.moveToFirst();
    String strings[] = new String[3];
    strings[0] = cursor.getString(0);
    strings[1] = cursor.getString(1);
    strings[2] = cursor.getString(2);
    return strings;
在调用活动中,您可以轻松地将这些返回的数组元素设置为TextView

希望这对你有帮助

对于数据库适配器,您可以做一件事

if (cursor != null){
    cursor.moveToFirst();
    String strings[] = new String[3];
    strings[0] = cursor.getString(0);
    strings[1] = cursor.getString(1);
    strings[2] = cursor.getString(2);
    return strings;
在调用活动中,您可以轻松地将这些返回的数组元素设置为TextView


希望这能对您有所帮助。

您的代码存在冗余问题。您的代码存在冗余问题。谢谢,我想这是一种解决方法,但我尝试编写的方法在我的数据库适配器活动中,我正在从另一个活动调用该方法。因此,该方法(在DB适配器活动中)无法看到TextView调用,因为它们位于另一个活动中。如何让DB Adapter活动查看TextView?谢谢,我想这是一种方法,但是我尝试编写的方法在我的数据库适配器活动中,我正在从另一个活动调用该方法。因此,该方法(在DB适配器活动中)无法看到TextView调用,因为它们位于另一个活动中。如何让DB适配器活动查看文本视图?