Java EditText到字符串返回Null
正如标题所述,当我执行此应用程序时,WebView连接到“” 除了我放在编辑文本上的字符串,我想不出这个问题 主要活动Java EditText到字符串返回Null,java,android,android-edittext,Java,Android,Android Edittext,正如标题所述,当我执行此应用程序时,WebView连接到“” 除了我放在编辑文本上的字符串,我想不出这个问题 主要活动 public class MainActivity extends AppCompatActivity { EditText web; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView
public class MainActivity extends AppCompatActivity {
EditText web;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
web = (EditText) findViewById(R.id.web);
String webstr = web.getText().toString();
Intent int2 = new Intent(MainActivity.this, WebView.class);
int2.putExtra("123", webstr);
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), WebView.class);
v.getContext().startActivity(intent);
}
});
}
}
网络视图活动
public class WebView extends AppCompatActivity {
private android.webkit.WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_web_view);
Intent intent = getIntent();
String web1 = intent.getStringExtra("123");
webView = findViewById(R.id.webview);
webView.getSettings().setDomStorageEnabled(true);
webView.setWebViewClient(new WebViewClient());
webView.loadUrl("https://" + web1);
Toast.makeText(WebView.this, "Connected", Toast.LENGTH_SHORT).show();
}
}
单击按钮时,您需要从
EditText
中获取值,而不是在onCreate
中
此外,您没有使用相同的意图
,因此实际上没有传递该值
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), WebView.class);
String webstr = web.getText().toString();
intent.putExtra("123", webstr);
v.getContext().startActivity(intent);
}
});
您调用了错误的意图,在下面错误的地方使用gettext,您可以看到修改过的代码
public class MainActivity extends AppCompatActivity {
EditText web;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
web = (EditText) findViewById(R.id.web);
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String webstr = web.getText().toString();
Intent int2 = new Intent(MainActivity.this, WebView.class);
int2.putExtra("123", webstr);
v.getContext().startActivity(int2);
}
});
}
}
您已将语句放置在“onCreate()”方法中。将其放置在“Button.onClickListener”中
public class MainActivity extends AppCompatActivity {
EditText web;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
web = (EditText) findViewById(R.id.web);
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String webstr = web.getText().toString();
Intent intent = new Intent(MainActivity.this, WebView.class);
intent.putExtra("123", webstr);
MainActivity.this.startActivity(intent);
}
});
}
}