2013-05-13 85 views
0

我想知道如何从popupwindow中的editText框中获取输入。我尝试了2种方法。一个与布局充气机和一个没有,但我要么得到“”或空,即使我输入的东西入禁区从PopUpWindow获取editText输入

这一个返回“”:

// get the username and password inputs 
     View inflatedView = getLayoutInflater().inflate(R.layout.login_popup, null); 
     EditText usernameInput = (EditText) inflatedView.findViewById(R.id.username_login_input); 
     EditText passwordInput = (EditText) inflatedView.findViewById(R.id.password_login_input); 

     final String usernameString = usernameInput.getText().toString(); 
     final String passwordString = passwordInput.getText().toString(); 

这一个返回null:

// get the username and password inputs 
     EditText usernameInput = (EditText) findViewById(R.id.username_login_input); 
     EditText passwordInput = (EditText) findViewById(R.id.password_login_input); 

     final String usernameString = usernameInput.getText().toString(); 
     final String passwordString = passwordInput.getText().toString(); 

我试图从中无法从活动

这是代码是从

产生login_popup.xml得到它

编辑

LayoutInflater layoutInflater = 
       (LayoutInflater) getBaseContext().getSystemService(LAYOUT_INFLATER_SERVICE); 
     View popupView = layoutInflater.inflate(R.layout.login_popup, null); 
     ppw = new PopupWindow(popupView, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, true); 
     ViewGroup parentLayout = (ViewGroup) findViewById(R.id.title_page_layout); 
     // set the position and size of popup 
     ppw.showAtLocation(parentLayout, Gravity.CENTER, 10, 20); 
+0

请张贴更多关于上下文的代码。这段代码在哪里出现?在AlertDialog中?在DialogFragment中? – Karakuri 2013-05-13 21:41:55

+0

你可以编辑你的文章... – Karakuri 2013-05-13 21:44:37

回答

5

尝试关闭时的弹出窗口下面,而不是:

View contentView = ppw.getContentView(); 
EditText usernameInput = (EditText) contentView.findViewById(R.id.username_login_input); 
EditText passwordInput = (EditText) contentView.findViewById(R.id.password_login_input); 
final String usernameString = usernameInput.getText().toString(); 
final String passwordString = passwordInput.getText().toString(); 

我认为,当前的做法是夸大新的观点,而不是从弹出的现有意见窗口。