Java Android:Simple Listview不使用startActivityForResult()显示数组中的字符串
我有两项活动。我的main和我的第二个main,我在我的第二个main中添加我的字符串,然后按后退按钮转到我的第一个main。 但是,当我将数组传递给arraylist适配器中的listview时,它不起作用Java Android:Simple Listview不使用startActivityForResult()显示数组中的字符串,java,android,arrays,listview,Java,Android,Arrays,Listview,我有两项活动。我的main和我的第二个main,我在我的第二个main中添加我的字符串,然后按后退按钮转到我的第一个main。 但是,当我将数组传递给arraylist适配器中的listview时,它不起作用 ArrayList<String> array= new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(saved
ArrayList<String> array= new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_address_list);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
private void Add() {
Intent intent = new Intent(AddressList.this, SilentGeofence.class);
startActivityForResult(intent, 2);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 2) {
String result = data.getStringExtra("result");
array.add(result);
System.out.println(array);
ArrayAdapter<String> adapter= new ArrayAdapter<String>(this,R.layout.activity_address_list,array);
ListView listview = (ListView) findViewById(R.id.listView);
listview.setAdapter(adapter);
}
}
这是我的地址列表xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.example.anusha.app.AddressList"
>
<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/listView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true" />
因此,您应该为该listview创建另一个带有textview的xml文件
<TextView
android:id="your id"
android:layout_width=""
android:layout_height=""/>
这样做
new ArrayAdapter<String>(this,R.layout.textviewlayout,R.id.youridforthattextview,array);
在您的第一个活动中:
String result = data.getStringExtra("result");
我们知道您的ListView基于字符串的ArrayList。因此,添加结果:
array.add(result);
在第二个活动中,您有一个字符串ag
看起来您正在将其添加到列表中
address.add(ag);
但是您返回的不是字符串而是列表
returnIntent.putExtra("result",address);
也许你是想把绳子还给我
活动\地址\列表xml中有什么?它是否包含该列表视图的listview或textview对于listview中的项目,您应该创建一个单独的xml布局文件,并将该布局文件和textview的id传递给arrayadapter构造函数
address.add(ag);
returnIntent.putExtra("result",address);
returnIntent.putExtra("result",ag);