Android studio如何将Array数据传递给另一个活动的TextView?

时间:2016-07-13 10:54:27

标签: android arrays arraylist

我是Android studio中学习Array的新手。请详细介绍一些例子。我在这里写了一个例子,我想将MainActivity中的Array数据显示为second_page活动。

MainActivity.java

public class MainActivity extends AppCompatActivity {

String my_array[]={"dog","cat","tiger"};

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

public void next_page(View view){  
    Intent intent = new Intent(this,second_page.class);
    intent.putExtra("my_array_next", my_array);
    startActivity(intent);
}

}

second_page.java

public class second_page extends MainActivity {

TextView get_data;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.second_page);

    get_data=(TextView)findViewById(R.id.tv);
    Intent intent=getIntent();

    // coding here to display the array data 
    // sth like   abc.setText(display_array_data);

}

请指教。谢谢!

5 个答案:

答案 0 :(得分:1)

如果您尝试将String-array从一个Activity发送到另一个Activity,可以在Intent中完成。

  

在ClassA中:

Intent intent = new Intent(this, ClassB);
String[] my_array = new String[]{"dog","cat","tiger"};
intent.putExtra("myArr", my_array);
startActivity(intent);
  

在ClassB中:

public void onCreate() {
  Intent intent = getIntent();
  String[] myStrings = intent.getStringArrayExtra("myArr");
}

这可能有助于你

答案 1 :(得分:0)

首先采取数组:

Intent intent = getIntent();
List array;
if (intent.getExtras() != null) {
    array= intent.getExtras().getBoolean("my_array_next");
}

然后打印

get_data.setText(array.toString());

答案 2 :(得分:0)

发送课程:

Intent intent = new Intent(this, ClassB);
String[] myStrings = new String[] {"test", "test2"};
intent.putExtra("strings", myStrings);
startActivity(intent);

恢复课程

public void onCreate() {
  Intent intent = getIntent();
  String[] myStrings = intent.getStringArrayExtra("strings");
}

答案 3 :(得分:0)

在你的第二项活动中:

String[] array=getIntent().getStringArrayExtra("my_array_next");

我认为您需要了解基础知识,请转到https://developer.android.com/index.html开始。

答案 4 :(得分:0)

second_page.java中,接收您通过Intent传递的数组并将其设置为TextView,如此

@Override
protected void onCreate(Bundle savedInstanceState) {
    ...
    String[] array = intent.getStringArrayExtra("my_array_next");

    // TextView display a String so you should convert your Array to String
    String str1 = Arrays.toString(array); 
    get_data.setText(str1);
}