0

このコードで私は写真を撮ることができますが、onCreate() では画像の名前は "name.jpg" のように静的ですが、それを new Date().toString()+".jpg"に変更すると動作しなくなります.. . 写真の撮影時間に応じて画像の名前を動的にするのを手伝ってください。ありがとう

          public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.picturelayout);
        String imageName=new Date().toString();
        path=Environment.getExternalStorageDirectory()+"/TrackMe/"+"name.jpg";
    }
    public void CLICK(View v)
    {
        File f=new File(path);

         Uri myuri=Uri.fromFile(f);
         Intent i =new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
         i.putExtra(MediaStore.EXTRA_OUTPUT, myuri);
         startActivityForResult(i, 0);
    }
     public void back(View view){
         Intent intentBack=new Intent(getApplicationContext(),SettingsActivity.class);
         startActivity(intentBack);
     }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);
        if(resultCode==0)
        {
            Toast.makeText(getApplicationContext(), "Photo not taken", 
Toast.LENGTH_LONG).show();
        }
        else
        {
        Bitmap bm = BitmapFactory.decodeFile(path); 
        ImageView iv=(ImageView)findViewById(R.id.trackMePicture);
        iv.setImageBitmap(bm);
        }
    } 
4

3 に答える 3

1

タイムスタンプを生成

SimpleDateFormat s = new SimpleDateFormat("ddhhmmss");
format = s.format(new Date());
于 2012-10-04T09:20:27.770 に答える
0

これを使って

    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");
    String imageName = sdf.format(new Date());
    path=Environment.getExternalStorageDirectory()+"/TrackMe/"+imageName+".jpg"; 
于 2012-10-04T09:24:05.960 に答える
0

これで試して、

日付値を取得するには、

String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());

この文字列を使用して保存します

 path=Environment.getExternalStorageDirectory()+"/TrackMe/"+"timeStamp.jpg"
于 2012-10-04T09:24:08.790 に答える