![](/img/trans.png)
[英]Click button to pass data from edittext to textview in the same page
[英]Send text from EditText to TextView on button click, add formatting if radiobutton/checkbox is checked
我正在尝试制作一个程序,该程序接受用户文本输入并将其显示在textview中,同时还要根据已选中了哪个单选按钮和/或复选框来对其进行格式化。
这是我用于mainactivity.java的全部代码
包com.example.lab3_lefelhocz;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.*;
import android.graphics.Color;
public class MainActivity extends Activity {
TextView messageTextView;
EditText inputEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public void onRadioButtonClicked(View view) {
// Is the button now checked?
boolean checked = ((RadioButton) view).isChecked();
// Check which radio button was clicked
switch(view.getId()) {
case R.id.radioBlack:
if (checked)
// Text is black.
messageTextView.setTextColor(Color.BLACK);
break;
case R.id.radioBlue:
if (checked)
// Text is blue.
messageTextView.setTextColor(Color.BLUE);
break;
case R.id.radioRed:
if(checked)
// Text is red.
messageTextView.setTextColor(Color.RED);
break;
}
}
public void inputEditText(View view) {
if (inputEditText.getText().toString().equals("")) {
String editTextValue = inputEditText.getText().toString();
messageTextView.setText(editTextValue);
} else {
inputEditText.setText("");
messageTextView.setText("");
}
}
}
我猜您正在尝试通过使用XML中的onClick属性来捕获对EditText的点击。 我认为这不适合您的轮胎打法。 您要查找按键而不是单击。 尝试在oncreate中的EditText上放置一个侦听器。 类似于以下内容。
inputEditText.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
inputEditText(v);
return true;
}
return false;
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.