在@raja的帮助下,我发现我需要将数据更新到列表中。 建议更改对话框文件的行:

package com.example.classorganizer;

import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

class EditListItemDialog extends Dialog implements View.OnClickListener {

private View editText;

public EditListItemDialog(Context context) {
    super(context);
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.edit_text_dialog);//here is your xml with EditText and 'Ok' and 'Cancel' buttons
    View btnOk = findViewById(R.id.button_ok);
    editText = findViewById(R.id.edit_text);
    btnOk.setOnClickListener(this);
}

@Override
public void onClick(View v) {
    fragment_monday.add(((TextView) editText).getText().toString());//here is your updated(or not updated) text
    dismiss();
}
}

恰好在onClick方法中将fragment_monday.add添加到该行。 不幸的是,当我添加fragment_monday时,错误无法解决或不是弹出字段。

我无法使用对话框文件更新列表中的数据,我认为我没有正确调用列表。 如果需要,我可以发布其他代码。 任何帮助,将不胜感激。

这是当在对话框文件中按确认按钮导致应用程序崩溃时的最新日志:

04-20 19:18:06.049: E/AndroidRuntime(1468): FATAL EXCEPTION: main
04-20 19:18:06.049: E/AndroidRuntime(1468): java.lang.NullPointerException
04-20 19:18:06.049: E/AndroidRuntime(1468):     at         com.example.classorganizer.EditListItemDialog.onClick(EditListItemDialog.java:37)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at     android.view.View.performClick(View.java:2485)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at android.view.View$PerformClick.run(View.java:9080)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at android.os.Handler.handleCallback(Handler.java:587)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at android.os.Handler.dispatchMessage(Handler.java:92)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at android.os.Looper.loop(Looper.java:130)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at android.app.ActivityThread.main(ActivityThread.java:3687)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at java.lang.reflect.Method.invokeNative(Native Method)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at java.lang.reflect.Method.invoke(Method.java:507)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
04-20 19:18:06.049: E/AndroidRuntime(1468):     at dalvik.system.NativeStart.main(Native Method)

===============>>#1 票数:0

问题是您的对话框不知道fragment_monday

例如,您可以通过在构造函数中传递列表fragment_monday作为参数并声明字段fragment_monday 假设它是一个字符串列表:

private List<String> fragment_monday;

public EditListItemDialog(Context context, List<String> fragment_monday) {
    super(context);
    this.fragment_monday = fragment_monday;
}

旁注:我将重命名“ fragment_monday”,因为它违反了命名约定

  ask by lisoslaw translate from so

未解决问题?本站智能推荐:

2回复

Android onItemLongClick在不同活动中将位置添加到arrayList

我有两个活动。 我的目标是:在活动2中的任何ListView位置上长按之后,我希望将一些String添加到活动1中的 ListView中。 从活动2,我将通过按back按钮返回活动1 。 每个ListView都有不同的adapter 。 我尝试使用Bundle ( extra )
3回复

为什么我的onitemlongclick监听器不起作用?

从MainActivity: 在这种情况下, ListView的ID在XML中设置为android:id="@android:id/list" 。 然后在同一活动中: 但是,当我长按列表中的一个项目时,唯一触发的事件是onListItemClick 。 长按我永远不会收到
3回复

修改列表视图中onItemLongClick的失效时间

我需要修改onItemLongClick的失效时间(默认持续时间对于老人来说太快了)。 有人能帮我吗?
4回复

我已经将onItemLongClickListener设置为我的列表视图,但是单击列表项后,什么也没有发生。 我怎样才能解决这个问题?

我正在使用从数据库中获取数据,并希望将其设置为我的列表项。 单击并按住一个项目后,我希望打开一个对话框,提示用户选择给定的选项之一。 我的代码如下:My MainActivity.java类 我的activity_main.xml: 列表项的“我的布局”:
1回复

防止在showContextMenu上调用onItemLongClick

我正在使用自定义ListView,该实现实现了拖动元素以对其重新排序。 长按即可启动重新排序。 我还想通过单击一下鼠标,为列表中的每个元素打开上下文菜单,就像这样(包含列表视图的片段中的代码): 问题在于,Android内部显然是通过调用视图的OnItemLongClickHan
4回复

在onItemLongClick中显示AlertDialog会给出有关父项的错误,我该怎么办?

我试图在用户执行Listview的onItemLongClick时显示一个对话框,以确认用户是否要这样做,但在adb.show()行中给了我这个错误: 指定的孩子已经有一个父母。 您必须先在孩子的父母上调用removeView() 以下代码: 我搜索了答案,但我发现有
2回复

Android将多个数据从列表传递到另一个活动

我有: 和 在一项活动中。 第二个活动包含: 现在我需要的是: 长时间单击mListView项后,我想以某种方式存储其位置,然后在单击"Back"按钮后,我希望将该位置传递给第二个活动中的ar数组。 它有效,但仅适用于列表中的一项。 如果我单击另一个位置,
1回复

使用simple_list_item_checked onItemLongClick的android listview没有按预期进行检查

我有一个使用android.R.layout.simple_list_item_checked的ListView ,我想同时设置onItemLongClick()侦听器和onItemClick()侦听器来执行不同的操作。 我如何只能长按以选中/取消选中项目,而不单击(短按)? 谢谢 我
2回复

Android长按监听器

我正在创建一个简单的Android应用程序,以便可以玩一些有趣的事情,并测试Android的实际工作方式。 到目前为止,我已经能够成功地将导航抽屉,一个活动中的多个片段以及一个数据源连接合并在一起。 我的问题是,当我尝试创建长按监听器以删除列表中的项目时,应用程序“意外关闭”。 我有3个名
2回复

如何在Android中将多个单击侦听器设置为AutoCompleteTextView?

我有一个AutoCompleteTextView ,当键入少数与其ArrayAdapter数据匹配的关键字时,将显示提示列表。 目前,我已经设置了AdapterView.OnItemClickListener,因此当用户单击提示时,屏幕上的软键盘将关闭。 我想要实现的目标: