Android - 对话框按钮onClick - > EditText值

问题描述:

我在我的选项菜单中有一个“搜索”按钮,它显示一个带搜索掩码的对话框。 所以当你点击搜索按钮时,它应该开始实际的搜索。Android - 对话框按钮onClick - > EditText值

我想要在我的onCreateDialog做的是:

Button search_button = (Button) dialog.findViewById(R.id.d_search_button); 
search_button.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
    EditText text = (EditText) v.findViewById(R.id.d_search_text); 
    } 
}); 

这将无法工作,因为文本为空,那么什么是访问搜索文本的最佳方式?

final EditText text = (EditText) v.findViewById(R.id.d_search_text); 

    search_button.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 

    String searchString = text.getText().toString(); 
    //do something 
    } 

}); 
+0

我觉得有点傻了,可能真的想过。大声笑 – Dreiven 2012-04-16 18:55:17

使EditText text成为最终的全局变量。并设置当您设置的事件,它就会可每当事件触发:

Button search_button = (Button) dialog.findViewById(R.id.d_search_button); 
text = (EditText) v.findViewById(R.id.d_search_text); 
search_button.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View v) { 
    //get your text here 
    } 
});