我正在尝试为我的待办事项列表应用制作一个编辑功能。我想要做的是点击列表中的项目,然后我将被发送到新页面,我可以在列表中编辑项目。我目前正在收到警告:
This text field does not specify an inputType or a hint
Issue: Looks for text fields missing inputType or hint settings
Id: TextFields
我想知道如何将ListView
中的文字传递给我的第二个活动作为我EditText
中要编辑的第一件事?
这是我到目前为止所做的:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_to_do);
etNewItem = (EditText) findViewById(R.id.etNewItem);
lvItems = (ListView) findViewById(R.id.lvItems); // now we have access to ListView
readItems(); // read items from file
todoAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, todoItems); //create adapter
lvItems.setAdapter(todoAdapter); // populate listview using the adapter
setupListViewListener();
setupEditItemListener();
}
private void launchEditItem() {
Intent i = new Intent(this, EditItemActivity.class);
startActivity(i);
}
private void setupEditItemListener() { // on click, run this function to display edit page
lvItems.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
launchEditItem();
}
});
}
答案 0 :(得分:1)
我无法确定你发布了什么,你究竟要通过什么。但是,你可以做几件事。
(1)您可以在Application的子类中引用ListView。应用程序是放置应用程序范围全局变量的好地方。
(2)与(1)类似,在Application子类中引用适配器。
(3)您可以将查询或其他列表设置参数传递给编辑活动并让它重新查询。
(4)您可以使用putExtra()将所选列表项中的索引或其他键信息传递给intent。您可以通过传回一个intent将更新的信息传递回主活动。如果主活动使用StartActivityWithResult()。
,它将收到返回的意图