Android 制作一个通用的输入屏幕
我有一个很大的表格,里面有各种各样的字符串和数字,其中很多都必须是可编辑的。当然,该表是从一个对象加载的,其中包含getter和setter 我想创建一个带有编辑文本和ok按钮的通用输入屏幕;并使用它来编辑字段。但是,我无法实现此功能,这是我的代码片段:Android 制作一个通用的输入屏幕,android,Android,我有一个很大的表格,里面有各种各样的字符串和数字,其中很多都必须是可编辑的。当然,该表是从一个对象加载的,其中包含getter和setter 我想创建一个带有编辑文本和ok按钮的通用输入屏幕;并使用它来编辑字段。但是,我无法实现此功能,这是我的代码片段: public class InputViewController extends Activity { private String inputType; EditText mEdit; private String inputString;
public class InputViewController extends Activity {
private String inputType;
EditText mEdit;
private String inputString;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.inputscreen);
Bundle extras=getIntent().getExtras();
{
//get the type of input from the screen that sent us here, contained in a putextra
inputType = extras.getString("inputType");
TextView textViewInput = (TextView) findViewById(R.id.textViewInput);
textViewInput.setText(inputType);
mEdit = (EditText)findViewById(R.id.editText1);
}
//save input and return to previous screen
final Button button = (Button) findViewById(R.id.button3);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//save input based on inputType
if(inputType.equals("Oplossing")){
inputString = mEdit.getText().toString();
ActivityViewController.activityObject.setSolution(inputString);
System.out.println(ActivityViewController.activityObject.getSolution());
}
//return to previous screen
finish();
}
});
那么问题到底出在哪里呢?代码在我看来还行——也许你可以告诉我们哪里出了问题——也许调用此意图的代码也很有用。对象的属性实际上没有改变。在上一个意图中,我使用onClick函数转到下一个意图:
if(v.getId()==R.id.textviewSolution){intent intent intent=new intent(ActivityDetailViewController.this,InputViewController.class);intent.putExtra(“inputType”,“oplosing”);startActivity(intent);}
如果不是因为活动对象的解决方案属性没有被更改,那么它的效果非常好。显然,我解决了问题,当我完成()并返回到以前的意图时,该意图不会被重新加载,因此旧的对象属性会显示出来。稍后我会发布一个答案。