刚刚开始通过Android Studio学习Java以进行应用程序开发。创建一个应用程序来收集用户的输入,其中包括用户的姓名和年龄,单击“提交”按钮时,输出是基于其年龄范围的字符串。下面的代码:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Adding Action to the Button
Button BtnSubmit = findViewById(R.id.BtnSubmit);
BtnSubmit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String TbName = "";
int TbAge =0;
String TxtOuput;
if (TbAge>0 && TbAge<=18)
{
TxtOuput = TbName + ("You Are Still A Child");
}
else if(TbAge>18 && TbAge<=64)
{
TxtOuput = TbName + ("You Are Grown");
}
else if(TbAge>64)
{
TxtOuput = TbName + ("You Are About To Die") + ("R.I.P");
}
}
});
}
}
尝试了来自google,youtube和其他来源的各种方法,但该应用程序仍不会执行输出。 Application layout/blueprint:
答案 0 :(得分:0)
根据您的问题,希望用户在editText字段中添加其姓名和年龄。单击“提交”按钮时,应在下一个屏幕(活动)上显示输入的数据。
要实现此目标:
在xml布局文件中使用2个editText字段和1个按钮。
问题: 您仅在布局文件中添加了按钮视图,而不是editText。
让我知道您是否想要相同的代码。
答案 1 :(得分:0)
使用onclick侦听器的最佳简便方法, 在您的xml布局中,
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".activity.MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onclick="goToMethod"/>
</LinearLayout>
在您的活动中,
class MainActivity extends Activity{
public void goToMethod(View view){
//do your code here
}
}
注意:在tools:context中,您应该提及您使用布局和onclick的活动
答案 2 :(得分:0)
您不会在共享代码的任何地方获取变量中的文本字段值。同样,您也不会将这些值设置回“状态”文本字段。
所以应该是这样的:
如果我假设您有名称的firstEditText EditText视图,年龄的secondEditEdit和status的resultTextView,那么您的代码将如下所示:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Adding Action to the Button
Button BtnSubmit = (Button)findViewById(R.id.BtnSubmit);
EditText firstEditText = (EditText) findViewById(R.id.firstEditText);
EditText secondEditText = (EditText) findViewById(R.id.secondEditText);
TextView resultTextView = (TextView) findViewById(R.id.resultTextView);
BtnSubmit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String TbName = firstEditText.getText();
int TbAge = Integer.parseInt(secondEditText.getText().toString());
String TxtOuput;
if (TbAge>0 && TbAge<=18)
{
TxtOuput = TbName + ("You Are Still A Child");
}
else if(TbAge>18 && TbAge<=64)
{
TxtOuput = TbName + ("You Are Grown");
}
else if(TbAge>64)
{
TxtOuput = TbName + ("You Are About To Die") + ("R.I.P");
}
resultTextView.setText(TxtOuput);
}
});
}
}
尝试一下,让我知道