Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 制作一个通用的输入屏幕_Android - Fatal编程技术网

Android 制作一个通用的输入屏幕

Android 制作一个通用的输入屏幕,android,Android,我有一个很大的表格,里面有各种各样的字符串和数字,其中很多都必须是可编辑的。当然,该表是从一个对象加载的,其中包含getter和setter 我想创建一个带有编辑文本和ok按钮的通用输入屏幕;并使用它来编辑字段。但是,我无法实现此功能,这是我的代码片段: public class InputViewController extends Activity { private String inputType; EditText mEdit; private String inputString;

我有一个很大的表格,里面有各种各样的字符串和数字,其中很多都必须是可编辑的。当然,该表是从一个对象加载的,其中包含getter和setter

我想创建一个带有编辑文本和ok按钮的通用输入屏幕;并使用它来编辑字段。但是,我无法实现此功能,这是我的代码片段:

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);}
如果不是因为活动对象的解决方案属性没有被更改,那么它的效果非常好。显然,我解决了问题,当我完成()并返回到以前的意图时,该意图不会被重新加载,因此旧的对象属性会显示出来。稍后我会发布一个答案。