【发布时间】:2014-12-02 10:02:43
【问题描述】:
我有一个活动,我有一个简单的 Edittext 和一个按钮,如图所示:
不,我有一个 MainActivity,其中包含许多片段,如下所示:
这是我将edittext文本传递给主要活动的代码:
addlist = (ImageButton) findViewById(R.id.btnaddlist);
findViewById(R.id.btnaddlist).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View arg0) {
EditText edit = (EditText) findViewById(R.id.txtlist);
Intent i = new Intent(CreateList.this,
MainActivity.class);
Bundle bundle = new Bundle();
String ItemName = edit.getText().toString();
// Add your data from getFactualResults method to bundle
bundle.putString("ListItemName", ItemName);
// Add the bundle to the intent
i.putExtras(bundle);
startActivity(i);
}
});
}
这是我的主页片段:
ListView lv;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
lv = (ListView) getView().findViewById(R.id.itemslistView);
View rootView = inflater.inflate(R.layout.fragment_home, container, false);
Bundle itemintent = getActivity().getIntent().getExtras();
String ItemName = itemintent.getString("ListItemName");
if (itemintent.getString("ListItemName").equals("ItemName")) {
/** Items entered by the user is stored in this ArrayList variable */
ArrayList<String> list = new ArrayList<String>();
list.add(ItemName);
/** Declaring an ArrayAdapter to set items to ListView */
ArrayAdapter<String> Listadapter;
Listadapter = new ArrayAdapter<String>(getActivity().getApplicationContext(),android.R.layout.simple_list_item_1, list);
Listadapter.notifyDataSetChanged();
}
return rootView;
}
我在 logcat 中没有收到任何错误。但它无法在 MainActivity 上的 listView 中添加任何文本。
【问题讨论】:
-
您是否将适配器设置为您的列表视图? lv.setAdapter(Listadapter);
-
@Rami-是的,我已将其设置为我的 ListView。
-
在哪里?我在你的代码中没有看到它。
-
@Rami-如果可以,你能告诉我如何设置吗?
-
您已经从活动中获取数据,因此无需使用此
if (itemintent.getString("ListItemName").equals("ItemName")) {。删除这个。
标签: android listview android-edittext android-fragmentactivity