没有文本从 B 返回到 listView A
Posted
技术标签:
【中文标题】没有文本从 B 返回到 listView A【英文标题】:No text return from B to listView A 【发布时间】:2016-02-17 02:53:41 【问题描述】:我有两个 Activity,A 和 B。在 A 中,它有一个 listView
和一个 button
。在 B 中,它有 imageView
和 editText
。现在我想要实现的是将文本从 B 返回到 listView
A。
活动 A
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
super.onCreate(savedInstanceState);
View claims = inflater.inflate(R.layout.receipt_text, container, false);
listV = (ListView) claims.findViewById(R.id.listView);
adapter=new ArrayAdapter<String>(getActivity(),R.layout.claims,R.id.textView1,status);
m_listItems.add(name);
m_listItems.add(result);
listV.setAdapter(adapter);
adapter.notifyDataSetChanged();
return claims;
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) // receive text from B
switch (requestCode)
case 0:
result = data.getStringExtra("text");
name = data.getStringExtra("a");
description = data.getStringExtra("c");
break;
活动 B
ImageView viewImage;
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.project);
txt = (EditText) findViewById(R.id.editText36);
txt1=(TextView)findViewById(R.id.textView57);
Button b = (Button) findViewById(R.id.button17);
addListenerOnButton();
b.setOnClickListener(new View.OnClickListener() // return to A
public void onClick(View arg0)
Intent returnIntent = new Intent();
a = "Project";
text = txt.getText().toString(); // amount
returnIntent.putExtra("text", text);
returnIntent.putExtra("a", a);
returnIntent.putExtra("c", c);
setResult(Activity.RESULT_OK, returnIntent);
finish();
);
public void addListenerOnButton()
imageButton = (ImageButton) findViewById(R.id.imageButton);
imageButton.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View arg0)
Global.img=null;
Intent i = new Intent(Project1.this, C.class);
startActivityForResult(i, PROJECT_REQUEST_CODE);
);
public void onActivityResult(int requestCode,int resultCode, Intent data)
// receive from C
if(requestCode==PROJECT_REQUEST_CODE)
if(data!=null&&data.hasExtra("text"))
c = data.getStringExtra("text");
txt1.setText(c);
viewImage.setImageBitmap(Global.img);
else if (requestCode==CAMERA_REQUEST_CODE)
receipt_text.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_ android:layout_
android:orientation="vertical">
<TextView android:layout_
android:layout_ android:padding="10dp"
android:text="@string/text" android:textSize="20sp" />
<TextView
android:id="@+id/textView"
android:layout_
android:layout_ >
</TextView>
<ListView android:id="@+id/listView1" android:layout_
android:layout_ />
</LinearLayout>
claims.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_ android:layout_
android:orientation="vertical">
<TextView
android:id="@+id/textView1"
android:layout_
android:layout_
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:textAppearance="?android:attr/textAppearanceMedium" />
</LinearLayout>
这是我迄今为止尝试过的,但是,没有从 B 到 A 的值返回。这里有什么问题?
【问题讨论】:
如何将值返回给listVIew?请帮助我...谢谢 case RESULT_OK: 或者把代码移到交换机外面先验证一下。最好不要直接从 Intent 获取数据。使用捆绑包。 @RanjithSubramaniam 你能举一些例子吗? tylenoly.wordpress.com/2010/10/27/… 我可以使用Log
获得一个值。但它没有加载到 listView 中
【参考方案1】:
移动
m_listItems.add(name);
m_listItems.add(result);
listV.setAdapter(adapter);
adapter.notifyDataSetChanged();
到案例 0
【讨论】:
以上是关于没有文本从 B 返回到 listView A的主要内容,如果未能解决你的问题,请参考以下文章
jquery mobile listview使用ajax动态加载后,跳转到其他页面返回时数据没有保存如何解决?