我该怎么做才能修复我的应用?

时间:2015-08-26 01:08:50

标签: java android camera

我的相机应用程序出了问题,就是当我拍照时我可以在imageview中看到它,但是当我打开手机或关闭应用程序并重新打开它时,图像就会消失。

我的代码 - >

public class semana1 extends Activity {

    Button btnfoto1;
    ImageView imgs1;
    static final int CAM_REQUEST=1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.semana1);
        btnfoto1= (Button) findViewById(R.id.btnfoto1);
        imgs1= (ImageView) findViewById(R.id.imgs1);
        btnfoto1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent int1=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                File file=getfile();
                int1.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
                startActivityForResult(int1,CAM_REQUEST);

            }
        });

    }
    private File getFile()
    {
        File folder=new File("sdcard/Progress");

        if(!folder.exists())
        {
            folder.mkdir();
        }
        File image_file=new File(folder,"image1.jpg");
        return image_file;
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {

        String path = "sdcard/Progress/image1.jpg";

        imgs1.setImageDrawable(Drawable.createFromPath(path));
    }
}

1 个答案:

答案 0 :(得分:0)

阅读应用的activity lifecycle

现在指出你有点正确的方向。当您关闭应用程序时,系统会停止应用程序,并可能稍后将其删除。你的图片消失的原因是你没有为你的应用程序实现一种方法来保存它之前的状态。

因此,您应该实施:

// function settings
function getRandom(lower, upper) {
  return Math.floor(Math.random()*(upper-lower+1))+lower;
}

// ask users to give a range of numbers
var lowerNum = parseInt(prompt("lower number?"));
var upperNum = parseInt(prompt("upper number?"));

document.write(getRandom(lowerNum, upperNum));