带对话框的 findViewbyID
findViewbyID with dialogs
我正在尝试提取特定对话框中的用户输入。
但是,当我尝试使用 findViewbyID 并输入
final EditText ExceedingLimitInput = (EditText)dialog.findViewbyId(R.id.ExceedingLimitInput);
Android Studio 说对话框未定义。我不太确定我应该在这里做什么。
我已经研究了一些与此相关的问题,但是其中大多数只与 Fragment 使用有关,而我没有使用任何 fragment。也许我扩展错了class?
谁能告诉我为什么没有定义对话框,我该如何解决?
这是我的代码供参考:
设置菜单(主Class)
package com.example.denny.protoype2;
import android.app.Dialog;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class SettingsMenu extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings_menu);
//Exceeding Limit Dialog
final Button ExceedingLimitButton = (Button)findViewById(R.id.ExceedingLimitButton);
ExceedingLimitButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Dialog ExceedingLimitDialog = new Dialog(SettingsMenu.this);
ExceedingLimitDialog.setTitle("Exceeding Limit Dialog");
ExceedingLimitDialog.setContentView(R.layout.exceeding_limit_dialog);
ExceedingLimitDialog.show();
final EditText ExceedingLimitInput = (EditText)dialog.findViewbyId(R.id.ExceedingLimitInput);
}
});
}
}
喜欢
final EditText ExceedingLimitInput = (EditText)ExceedingLimitDialog.findViewbyId(R.id.ExceedingLimitInput);
对话框 == 超出限制对话框 你的情况
首先你应该膨胀你的观点
View view = View.inflate(this, R.layout.exceeding_limit_dialog, null);
然后将其设置为您的对话框
ExceedingLimitDialog.setContentView(view);
最后您可以找到您的 EditText
final EditText ExceedingLimitInput = (EditText) view.findViewById(R.id.ExceedingLimitInput);
我正在尝试提取特定对话框中的用户输入。 但是,当我尝试使用 findViewbyID 并输入
final EditText ExceedingLimitInput = (EditText)dialog.findViewbyId(R.id.ExceedingLimitInput);
Android Studio 说对话框未定义。我不太确定我应该在这里做什么。
我已经研究了一些与此相关的问题,但是其中大多数只与 Fragment 使用有关,而我没有使用任何 fragment。也许我扩展错了class?
谁能告诉我为什么没有定义对话框,我该如何解决?
这是我的代码供参考:
设置菜单(主Class)
package com.example.denny.protoype2;
import android.app.Dialog;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class SettingsMenu extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings_menu);
//Exceeding Limit Dialog
final Button ExceedingLimitButton = (Button)findViewById(R.id.ExceedingLimitButton);
ExceedingLimitButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Dialog ExceedingLimitDialog = new Dialog(SettingsMenu.this);
ExceedingLimitDialog.setTitle("Exceeding Limit Dialog");
ExceedingLimitDialog.setContentView(R.layout.exceeding_limit_dialog);
ExceedingLimitDialog.show();
final EditText ExceedingLimitInput = (EditText)dialog.findViewbyId(R.id.ExceedingLimitInput);
}
});
}
}
喜欢
final EditText ExceedingLimitInput = (EditText)ExceedingLimitDialog.findViewbyId(R.id.ExceedingLimitInput);
对话框 == 超出限制对话框 你的情况
首先你应该膨胀你的观点
View view = View.inflate(this, R.layout.exceeding_limit_dialog, null);
然后将其设置为您的对话框
ExceedingLimitDialog.setContentView(view);
最后您可以找到您的 EditText
final EditText ExceedingLimitInput = (EditText) view.findViewById(R.id.ExceedingLimitInput);