Android 获取编程设置的EditText值 编辑4:我做了我自己的数字游戏,所以我不再需要任何帮助了。 但我认为问题是我没有使用dialog.findViewById。。。

Android 获取编程设置的EditText值 编辑4:我做了我自己的数字游戏,所以我不再需要任何帮助了。 但我认为问题是我没有使用dialog.findViewById。。。,android,dialog,android-edittext,Android,Dialog,Android Edittext,我正在尝试获取一个EditText值,它是通过编程创建的。但它不起作用,当onClick函数运行时,代码中断 button.setOnClickListener(new OnClickListener() { public void onClick(View v) { numberValue = (EditText) findViewById(R.id.number_picker_value); Log.d("****2**", numberVal

我正在尝试获取一个EditText值,它是通过编程创建的。但它不起作用,当onClick函数运行时,代码中断

button.setOnClickListener(new OnClickListener()
{
    public void onClick(View v)
    {
        numberValue = (EditText) findViewById(R.id.number_picker_value);
        Log.d("****2**", numberValue.getText().toString());

        dialog.dismiss();
    }
 });
该值和ID是从另一个类NumberPicker.java设置的

可以在这里找到NumberPicker.java的完整源代码

R.id.number\u picker\u值在XML文件中定义为

编辑:

我对代码中断的意思是,我得到了一个强制关闭对话框

编辑2:

这是你想要的吗

编辑3:

顺便说一句,我从未访问过NumberPicker.java。当我用以下代码加载XML文件时,它会自动启动:

<?xml version="1.0" encoding="UTF-8"?>

<LinearLayout
    xmlns:android           = "http://schemas.android.com/apk/res/android"
    android:layout_width    = "wrap_content"    
    android:layout_height   = "wrap_content">

    <!-- This seem to start NumberPicker.java, so I have no object to refer to. -->
    <com.android.GissaSiffran.NumberPicker
        android:id            = "@+id/numberPickerDialog"
        android:orientation   = "horizontal"
        android:layout_width  = "fill_parent"
        android:layout_height = "fill_parent"
        android:gravity       = "center">
    </com.android.GissaSiffran.NumberPicker>

        <!--  Canel / ok button -->
    <Button
        android:id = "@+id/cnfrm"
        android:layout_width  = "wrap_content"
        android:layout_height = "wrap_content"
        android:textSize      = "13dp"
        android:textStyle     = "italic"
        android:text          = "@string/cnfrmBtn"></Button>

</LinearLayout>
也许我做错了什么

当我运行dialog.setContentViewR.layout.pick_a_number_对话框时;dialog.show;XML加载,数字选择器在对话框中,我可以选择数字。 但是我从来没有用ie NumberPicker np=new NumberPickergetApplicationContext,null启动过NumberPicker.java;也许我做错了?我是java新手


顺便说一句,我在这里的第一篇帖子:

对于未来的参考者,我使用的是我猜相同的NumberPicker.java。为了获得EditText的值,我在OnCreateView方法中创建了对EditText的引用,如下所示:

private EditText txtQty;

public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    View view = inflater.inflate(R.layout.dialog_numberpicker,container,false);

    txtQty = (EditText) view.findViewById(idText);

    return view;
}  
然后在onClick方法中:

String newOnHand = txtQty.getText().toString();

你说的代码中断是什么意思?错误消息是什么?你得到堆栈跟踪了吗?如果是,请将其添加到您的问题中。欢迎来到StackOverflow:你说密码坏了是什么意思?应用程序是否因强制关闭对话框而崩溃?在这种情况下,请从日志中发布stacktrace。谢谢。@alextsc谢谢:我想这是堆栈树,eclipse中有一个logcat。如果你是windows。您可以在窗口->Showview->logcat中找到logcat。将出现错误行。这就是你需要作为stacktrace发布的内容。@blessenm我刚刚创建了Android logcat和eclipse控制台,希望有人是对的。
String newOnHand = txtQty.getText().toString();